CN115883286B - IGMP message processing method, device, VTEP device and storage medium - Google Patents

IGMP message processing method, device, VTEP device and storage medium Download PDF

Info

Publication number
CN115883286B
CN115883286B CN202211511461.6A CN202211511461A CN115883286B CN 115883286 B CN115883286 B CN 115883286B CN 202211511461 A CN202211511461 A CN 202211511461A CN 115883286 B CN115883286 B CN 115883286B
Authority
CN
China
Prior art keywords
igmp
message
report message
side interface
interface
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
Application number
CN202211511461.6A
Other languages
Chinese (zh)
Other versions
CN115883286A (en
Inventor
吴迪
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Maipu Communication Technology Co Ltd
Original Assignee
Maipu Communication Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Maipu Communication Technology Co Ltd filed Critical Maipu Communication Technology Co Ltd
Priority to CN202211511461.6A priority Critical patent/CN115883286B/en
Publication of CN115883286A publication Critical patent/CN115883286A/en
Application granted granted Critical
Publication of CN115883286B publication Critical patent/CN115883286B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

The invention relates to the technical field of data communication, and provides an IGMP message processing method, an IGMP message processing device, a VTEP device and a storage medium, which are applied to a first VTEP device in a virtual extensible local area network (VXLAN) network, wherein the method comprises the following steps: acquiring an Internet Group Management Protocol (IGMP) query message; if the IGMP inquiry message is received from the access side interface or generated by the first VTEP equipment, sending the IGMP inquiry message and prohibiting sending the IGMP inquiry message to the tunnel side interface; if the IGMP query message is received from the tunnel side interface, the IGMP query message is discarded. The invention enables the multicast traffic to be forwarded between two VTEP devices without passing through a third VTEP device, avoids the multicast traffic from forming a loop in the VXLAN network, and realizes the effective forwarding of the multicast traffic in the VXLAN network.

Description

IGMP message processing method, device, VTEP device and storage medium
Technical Field
The present invention relates to the field of data communications technologies, and in particular, to an IGMP packet processing method, an IGMP packet processing device, a VTEP device, and a storage medium.
Background
IGMP Snooping (Internet Group Management Protocol Snooping ) is a mechanism of multicast constraints running on two-layer network forwarding devices for managing and controlling multicast groups. The VXLAN (Virtual Extention Local Area Network, virtual extensible local area network) technology is an L2 VPN (Layer 2Virtual Private Network) technology, and by encapsulation of VXLAN, decentralized sites can be interconnected in a two-Layer network.
How to forward multicast traffic effectively is a problem to be solved by those skilled in the art.
Disclosure of Invention
The invention aims to provide an IGMP message processing method, an IGMP message processing device, a VTEP device and a storage medium, wherein IGMP query messages are not sent through a tunnel interface, so that the first VTEP device and the second VTEP device can not learn IGMP query messages of the other party, the election of an inquirer is avoided, the problem that the forwarding load is too heavy due to the centralized processing of multicast traffic by the elected inquirer is further avoided, and the forwarding efficiency of the multicast traffic is improved.
Embodiments of the invention may be implemented as follows:
in a first aspect, the present invention provides an IGMP packet processing method, applied to a first VTEP device in a VXLAN network of a virtual extensible local area network, where the first VTEP device includes a tunnel side interface and an access side interface, where the first VTEP device communicates with a second VTEP device in the VXLAN network through the tunnel side interface, and where the first VTEP device communicates with a host or a router through the access side interface, where the method includes:
acquiring an Internet Group Management Protocol (IGMP) query message;
if the IGMP inquiry message is received from the access side interface or generated by the first VTEP equipment, sending the IGMP inquiry message and prohibiting sending the IGMP inquiry message to the tunnel side interface;
And discarding the IGMP inquiry message if the IGMP inquiry message is received from the tunnel interface.
In an alternative embodiment, the access side interface includes a router side interface for communicating with the router and a host side interface for communicating with the host, the method further comprising:
receiving an IGMP report message;
forwarding the IGMP report message to the router side interface and the tunnel side interface if the IGMP report message is received from the host side interface;
and if the IGMP report message is received from the tunnel side interface, forwarding the IGMP report message to the router side interface.
In an alternative embodiment, the access side interface includes a router side interface for communicating with the router and a host side interface for communicating with the host, the first VTEP device running an IGMP Snooping proxy, the method further comprising:
receiving an IGMP report message;
generating an IGMP agent report message according to the IGMP report message and sending the IGMP agent report message.
In an optional embodiment, the first VTEP device further includes an access side proxy database, and the generating an IGMP proxy report message according to the IGMP report message and sending the IGMP proxy report message includes:
If the state of the access side proxy database is changed from a non-forwarding state to a forwarding state, generating an IGMP proxy addition report message according to the IGMP report message, and sending the IGMP proxy addition report message to the router side interface;
if the state of the access side proxy database is changed from the forwarding state to the non-forwarding state, generating an IGMP proxy leaving report message according to the IGMP report message, and sending the IGMP proxy leaving report message to the router side interface.
In an alternative embodiment, the method further comprises:
if the IGMP report message is an IGMP adding report message and before the IGMP report message is received, no member of an access side interface or no member of a tunnel side interface exists in the access side proxy database, judging that the access side proxy database is changed from a non-forwarding state to a forwarding state;
and if the IGMP report message is an IGMP leave report message, before the IGMP report message is received, the member of the access side interface or the member of the tunnel side interface exists in the access side proxy database, and after the IGMP report message is received, the member of the access side interface does not exist in the access side proxy database and the member of the tunnel side interface does not exist in the access side proxy database, judging that the access side proxy database is changed from a forwarding state to a non-forwarding state.
In an optional embodiment, the first VTEP device further includes a tunnel side proxy database, and the generating an IGMP proxy report message according to the IGMP report message and sending the IGMP proxy report message includes:
if the state of the tunnel side proxy database is changed from a non-forwarding state to a forwarding state, generating an IGMP proxy addition report message according to the IGMP report message, and sending the IGMP proxy addition report message to the tunnel side interface;
if the state of the tunnel side proxy database is changed from the forwarding state to the non-forwarding state, generating an IGMP proxy leaving report message according to the IGMP report message, and sending the IGMP proxy leaving report message to the tunnel side interface.
In an alternative embodiment, the first VTEP device further includes a tunnel side proxy database, and the method further includes:
if the IGMP report message is an IGMP adding report message, and before the IGMP report message is received, no member of an access side interface exists in the tunnel side proxy database, and after the IGMP message is received, the tunnel side proxy database is judged to be changed from a non-forwarding state to a forwarding state;
If the IGMP report message is an IGMP leave report message, and before the IGMP report message is received, the member of the access side interface exists in the tunnel side proxy database, and after the IGMP report message is received, the member of the access side interface does not exist in the tunnel side proxy database, then the tunnel side proxy database is judged to be changed from a forwarding state to a non-forwarding state.
In an alternative embodiment, the first VTEP device further includes an access side proxy database and a tunnel side proxy database, the access side interface including a router side interface for communicating with the router and a host side interface for communicating with the host, the method further comprising:
and if the access side proxy database is in a forwarding state, sending an IGMP adding report message of the access side proxy database to the router side interface.
In an alternative embodiment, the method further comprises:
and periodically sending an IGMP (Internet group management protocol) joining report message of the tunnel side proxy database to the tunnel side interface.
In a second aspect, the present invention provides an IGMP packet processing apparatus applied to a first VTEP device in a VXLAN network of a virtual extensible local area network, where the first VTEP device includes a tunnel side interface and an access side interface, where the first VTEP device communicates with a second VTEP device in the VXLAN network through the tunnel side interface, and where the first VTEP device communicates with a host or a router through the access side interface, where the apparatus includes:
The acquisition module is used for acquiring an Internet Group Management Protocol (IGMP) query message;
the processing module is used for sending the IGMP inquiry message and prohibiting the IGMP inquiry message from being sent to the tunnel side interface if the IGMP inquiry message is received from the access side interface or is generated by the first VTEP equipment;
the processing module is further configured to discard the IGMP query message if the IGMP query message is received from the tunnel interface.
In a third aspect, the present invention provides a VTEP device, comprising a processor and a memory, the memory being configured to store a program, the processor being configured to implement the IGMP message processing method according to any one of the foregoing embodiments when the program is executed.
In a fourth aspect, the present invention provides a computer readable storage medium having stored thereon a computer program which, when executed by a processor, implements the IGMP message processing method of any of the preceding embodiments.
Compared with the prior art, the IGMP message processing method, the device, the VTEP equipment and the storage medium provided by the embodiment inhibit the IGMP query message generated by the device and the IGMP query message received by the access side interface from being sent through the VXLAN tunnel, and discard the IGMP query message received by the tunnel side interface, namely the IGMP query message is not sent through the tunnel side interface, so that the first VTEP equipment and the second VTEP equipment in the VXLAN network can not learn the IGMP query message of the other party, the election of an inquirer is avoided, the problem that the forwarding load is overweight due to the centralized processing of multicast traffic by the elected inquirer is further avoided, and the forwarding efficiency of the multicast traffic is improved.
Drawings
In order to more clearly illustrate the technical solutions of the embodiments of the present invention, the drawings that are needed in the embodiments will be briefly described below, it being understood that the following drawings only illustrate some embodiments of the present invention and therefore should not be considered as limiting the scope, and other related drawings may be obtained according to these drawings without inventive effort for a person skilled in the art.
Fig. 1 is an exemplary diagram of an application scenario provided in this embodiment.
Fig. 2 is a block diagram of the VTEP apparatus according to the present embodiment.
Fig. 3 is a flowchart illustrating an IGMP message processing method according to the present embodiment.
Fig. 4 is an exemplary diagram of IGMP join report message processing provided in this embodiment.
Fig. 5 is an exemplary diagram one of a multicast traffic forwarding procedure provided in this embodiment.
Fig. 6 is an exemplary diagram of processing an IGMP packet when a VM1 joins a multicast group according to the present embodiment.
Fig. 7 is an exemplary diagram of processing an IGMP packet when a VM2 joins a multicast group according to the present embodiment.
Fig. 8 is an exemplary diagram of processing an IGMP packet when a VM3 joins a multicast group according to the present embodiment.
Fig. 9 is an exemplary diagram two of multicast traffic forwarding provided in this embodiment.
Fig. 10 is a block diagram of an IGMP message processing apparatus according to an embodiment of the present invention.
Icon: a 10-VTEP device; 11-a processor; 12-memory; 13-bus; 14-a communication interface; 20-a host; 30-a router; 40-a server; a 50-spline node; 100-IGMP message processing device; 110-an acquisition module; 120-processing module.
Detailed Description
For the purpose of making the objects, technical solutions and advantages of the embodiments of the present invention more apparent, the technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings in the embodiments of the present invention, and it is apparent that the described embodiments are some embodiments of the present invention, but not all embodiments of the present invention. The components of the embodiments of the present invention generally described and illustrated in the figures herein may be arranged and designed in a wide variety of different configurations.
Thus, the following detailed description of the embodiments of the invention, as presented in the figures, is not intended to limit the scope of the invention, as claimed, but is merely representative of selected embodiments of the invention. All other embodiments, which can be made by those skilled in the art based on the embodiments of the invention without making any inventive effort, are intended to be within the scope of the invention.
It should be noted that: like reference numerals and letters denote like items in the following figures, and thus once an item is defined in one figure, no further definition or explanation thereof is necessary in the following figures.
In the description of the present invention, it should be noted that, if the terms "upper", "lower", "inner", "outer", and the like indicate an azimuth or a positional relationship based on the azimuth or the positional relationship shown in the drawings, or the azimuth or the positional relationship in which the inventive product is conventionally put in use, it is merely for convenience of describing the present invention and simplifying the description, and it is not indicated or implied that the apparatus or element referred to must have a specific azimuth, be configured and operated in a specific azimuth, and thus it should not be construed as limiting the present invention.
Furthermore, the terms "first," "second," and the like, if any, are used merely for distinguishing between descriptions and not for indicating or implying a relative importance.
It should be noted that the features of the embodiments of the present invention may be combined with each other without conflict.
In VXLAN networks, two-layer multicast messages are typically flooded in VXLAN networks. In order to avoid flooding of the multicast message and realize the on-demand forwarding of the two-layer multicast of the VXLAN network, the IGMP snoring function can be applied to the VXLAN network, namely, the IGMP snoring function is enabled on the VTEP equipment in the VXLAN network, the IGMP message in the VXLAN network is monitored through the IGMP snoring, a multicast forwarding table in the VXLAN broadcast domain is established, and the on-demand forwarding of the multicast message is completed.
IGMP snooping is designed according to a conventional two-layer network, and IGMP snooping in the two-layer network needs to elect a unique device from VTEP devices which enable IGMP snooping functions in a VXLAN network to serve as a querier device so as to query the whole two-layer network. All non-querier devices need to forward all multicast traffic to the querier device, where it is forwarded centrally.
The IGMP snooping of the two-layer network has the following problems when applied in VXLAN network:
(1) The VXLAN network is larger than the conventional two-layer network, and the device as the querier needs to process a large number of IGMP membership reports, which is overburdened on the control layer.
(2) All traffic needs to pass through the querier device, multicast traffic needs to be forwarded to the querier device by the non-querier device, the querier device performs centralized forwarding, the querier device needs to bear a large amount of data forwarding, and forwarding bandwidth is high in pressure.
(3) When forwarding multicast traffic, the multicast traffic entering the tunnel needs to be forwarded out of the tunnel, and loops are easy to form, so that loop prevention processing of multicast messages is needed, and network deployment complexity is high.
In view of this, the present embodiment provides an IGMP message processing method, device, VTEP apparatus and storage medium, for solving the above-mentioned problems, which will be described in detail below.
Referring to fig. 1, fig. 1 is an exemplary diagram of an application scenario provided in this embodiment, and in fig. 1, a VXLAN network includes two VTEP devices 10 that enable IGMP snooping functions: a VXLAN tunnel formed by a backbone node (spine node 50) is established between the VTEP A and the VTEP B, in the VXLAN networking structure of the leaf-spine structure, the spine node 50 focuses on high-speed IP forwarding, emphasizes high-speed forwarding capability, does not sense the VXLAN tunnel, only serves as a forwarding node of a VXLAN message, the VTEP A and the VTEP B are leaf nodes, the leaf nodes serve as two-layer gateway equipment in the VXLAN network, and are in butt joint with a physical server or a VM, so that the problem that a terminal tenant accesses the VXLAN virtual network is solved. And the leaf node is used as a three-layer gateway device in the VXLAN network to perform VXLAN message encapsulation/decapsulation, so that the communication of terminal tenants crossing subnets and the access of external networks are realized.
The interface 1 and the interface 2 of the VTEP a are access side interfaces, respectively connecting the host VM1 and the host VM2, and the interface 3 of the VTEP a is a tunnel side interface, through which communication with the VXLAN tunnel and the VTEP B is performed.
The interface 4 and the interface 5 of the VTEP B are access side interfaces, the interface 4 is connected to the host VM3, the interface 5 is connected to the router 30, the interface 6 of the VTEP B is a tunnel side interface, and communication with the VTEP a is performed through the tunnel side interface and the VXLAN tunnel. The access side interface comprises a host side interface for communicating with a host and a router side interface for communicating with a router, the interface 4 is the host side interface, and the interface 5 learns PIM (Protocol Independent Multicast ) protocol messages, so the interface 5 is the router side interface.
The router 30 runs PIM and IGMP protocols, the interface 7 of the router connects to the server 40, and the interface 8 of the router 30 connects to the VTEP B.
Taking the VTEP a as the first VTEP device as an example, if the VTEP a generates an IGMP query message, the VTEP a sends the generated IGMP query message to the interface 1 and the interface 2, sends the IGMP query message to the VM1 and the VM2 through the interface 1 and the interface 2, and prohibits sending the IGMP query message to the interface 3. If the VTEP a receives the IGMP query message from the interface 3, the IGMP query message is discarded.
VTEP a and VTEP B are both VTEP devices 10, VTEP is an abbreviation of english VXLAN Tunnel Endpoint, chinese refers to VXLAN tunnel end points, and VTEP devices 10 are responsible for encapsulation and decapsulation of VXLAN messages. Each VTEP device 10 is provided with two interfaces: one is a local bridge interface responsible for the original ethernet frame reception and transmission, and the other is an IP interface responsible for VXLAN data frame reception and transmission. The VTEP device 10 may be a physical switch or a software switch.
The hosts 20 are machines for receiving and transmitting service messages, the two hosts 20 exchange the service messages through the VTEP device 10 or the router 30, and the hosts 20 may be entity computers, virtual computers, notebook computers, tablet computers, mobile terminals, and the like.
The router 30 is a hardware device that connects two or more networks, acting as a gateway between the networks, and is a dedicated intelligent network device that reads the address in each packet and then decides how to transmit.
The server 40 is responsible for transmitting multicast traffic in a multicast manner, enabling streaming services to be provided to a large number of users. The server 40 may be a single server device, a server group or a server cluster composed of a plurality of servers, or the like.
It should be noted that fig. 1 is only an example of an application scenario, and in fact, VXLAN networks may further include other VTEP devices, where each VTEP device may be further connected to another host or router, and two VTEP devices may communicate through a tunnel.
On the basis of fig. 1, this embodiment also provides a block diagram of a VTEP device, referring to fig. 2, fig. 2 is a block diagram of the VTEP device provided in this embodiment, and the VTEP device 10 includes a processor 11, a memory 12, a bus 13, and a communication interface 14, where the processor 11, the memory 12, and the communication interface 14 are connected through the bus 13.
The processor 11 may be an integrated circuit chip with signal processing capabilities. In implementation, the steps of the IGMP message processing method may be performed by integrated logic circuits of hardware in the processor 11 or by instructions in the form of software. The processor 11 may be a general-purpose processor including a CPU (Central Processing Unit ), NP (Network Processor, network processor), and the like; but also DSP (Digital Signal Processing, digital signal processor), ASIC (Application Specific Integrated Circuit ), FPGA (Field Programmable Gate Array, field programmable gate array) or other programmable logic device, discrete gate or transistor logic device, discrete hardware components.
The memory 12 is used for storing programs, such as IGMP message processing apparatus 100 in the following embodiments. The IGMP message processing apparatus 100 comprises at least one software function module which may be stored in the memory 12 in the form of software or firmware (firmware) or cured in the OS (Operating System) of the VTEP device 10. After receiving the execution instruction, the processor 11 executes the program to implement the IGMP message processing method disclosed in the above embodiment.
The VTEP device 10 communicates with the host 20 and the router 30 via the communication interface 14.
Based on fig. 1 and fig. 2, this embodiment further provides an IGMP message processing method, which is applied to a first VTEP device, where the first VTEP device may be a VTEP a in fig. 1 or a VTEP B in fig. 1, and when the first VTEP device is a VTEP a in fig. 1, the second VTEP device is a VTEP B in fig. 1, and when the first VTEP device is a VTEP B in fig. 2, the second VTEP device is a VTEP a in fig. 2, and the first VTEP device may also be a VTEP device in fig. 2. Referring to fig. 3, fig. 3 is a flowchart illustrating an IGMP message processing method according to the present embodiment, and the method includes the following steps:
step S101, obtaining an Internet group management protocol IGMP query message.
In this embodiment, IGMP is an internet group management protocol for supporting multicasting by hosts and routers, so that all systems on a physical network know the multicast group in which the hosts are currently located.
In this embodiment, the IGMP query message may be generated by the first VTEP device, or may be received from the access side interface, or may be received from the tunnel side interface. If the first VTEP device configures the querier, the first VTEP device periodically generates an IGMP query message, and the first VTEP device may also receive the IGMP query message from the access side interface that communicates with the router 30, and may also receive the IGMP query message sent by the second VTEP device from the tunnel side interface.
Step S102, if the IGMP inquiry message is received from the access side interface or generated by the first VTEP equipment, the IGMP inquiry message is sent, and the IGMP inquiry message is forbidden to be sent to the tunnel side interface.
In this embodiment, if the IGMP query message is received from the access side interface, it is not sent out again from the received access side interface, and if the IGMP query message is generated by itself, it is sent out through all the access side interfaces. For example, there are 3 access side interfaces: interface a, interface b and interface c, if the IGMP query message is received from interface a, the IGMP query message is not sent out from interface a any more, but is sent out from interface b and interface c; if the IGMP query message is generated by the first VTEP device, the IGMP query message is sent out from the interface a, the interface b and the interface c.
Step S103, if the IGMP inquiry message is received from the tunnel side interface, discarding the IGMP inquiry message.
According to the method provided by the embodiment, the IGMP inquiry messages received by the non-tunnel side interface are forbidden to be sent through the VXLAN tunnel, and the IGMP inquiry messages received by the tunnel side interface are discarded, namely the IGMP inquiry messages are not sent through the tunnel side interface, so that the first VTEP equipment and the second VTEP equipment in the VXLAN network can not learn the IGMP inquiry messages of the other side, the election of an inquirer is avoided, the problem that the forwarding load is excessive due to the centralized processing of multicast traffic by the elected inquirer is further avoided, and the forwarding efficiency of the multicast traffic is improved.
In this embodiment, when the host joins the multicast group or leaves the multicast group, the host actively sends an IGMP report message, so that in order to make the device in the VXLAN network learn the IGMP report message as soon as possible, learn the latest change of the multicast group in time, this embodiment further provides a manner of processing the IGMP report message:
receiving an IGMP report message;
if the IGMP report message is received from the host side interface, forwarding the IGMP report message to the router side interface and the tunnel side interface;
if the IGMP report message is received from the tunnel side interface, forwarding the IGMP report message to the router side interface.
In this embodiment, if there are multiple router side interfaces and tunnel side interfaces, the IGMP report message received by the host side interface is forwarded to all router side interfaces and all tunnel side interfaces, and the IGMP message received by the tunnel side interface is forwarded to all router side interfaces.
It should be further noted that the IGMP report packet includes an IGMP join report packet triggered when the host joins the multicast group and an IGMP leave report packet triggered when the host leaves the multicast group. When the IGMP report packet is an IGMP join report packet, if the IGMP join report packet is received from a host side interface, the host side interface is added to a forwarding table, so that the first VTEP device forwards the multicast traffic to a host connected to the host side interface according to the forwarding table, and if the IGMP join report packet is received from a tunnel side interface, the tunnel side interface is added to the forwarding table, so that the first VTEP device forwards the multicast traffic to a second VTEP device in communication with the tunnel side interface according to the forwarding table; when the IGMP report packet is an IGMP leave report packet, the corresponding interface is correspondingly deleted from the forwarding table, which is not described herein.
To more clearly illustrate the processing procedure of the IGMP report packet, please refer to fig. 4, fig. 4 is an exemplary diagram of the IGMP join report packet processing provided in this embodiment, in fig. 4, when VM2 joins the multicast group, VM2 sends IGMP join report packet 1 to interface 2 of VTEP a, VTEP a joins interface 2 to the local forwarding table and sends IGMP join report packet 1 to interface 3, interface 6 arrives at VTEP B through interface 3, VTEP B receives IGMP join report packet 1 from interface 6, joins interface 6 to the local forwarding table and forwards IGMP join report packet 1 to interface 5, and sends IGMP join report packet 1 to router 30 through interface 5, router 30 joins interface 5 to the local forwarding table, and the sending path of IGMP join report packet 1 is shown by arrow-headed short-bars (1) - (4) in fig. 4; when VM3 joins the multicast group, VM3 sends IGMP join report message 2 to interface 4 of VTEP B, VTEP B joins interface 4 to the local forwarding table and forwards the IGMP join report message 2 to interface 6 and interface 5 of VTEP B, VTEP a receives the IGMP join report message 2 from interface 3 and joins interface 3 to the local forwarding table, since VTEP a is not connected to router 30, VTEP a does not forward the IGMP join report message 2 any more, and the transmission path of IGMP join report message 2 is shown by arrowed dotted lines (5) - (7) in fig. 4.
According to the method provided by the embodiment, when the IGMP report message is received, the IGMP report message can be reasonably forwarded, so that the forwarding table is reasonably updated according to the IGMP report message, multicast traffic is forwarded between the VTEP device, the host and other VTEP devices through the forwarding table, and the forwarding of a third VTEP device is not needed, thereby reducing bandwidth pressure caused by the forwarding of the multicast traffic.
In order to more clearly describe the forwarding process of the multicast traffic, please refer to fig. 5, fig. 5 is an exemplary diagram of the forwarding process of the multicast traffic provided in the present embodiment. In FIG. 5, VM2 and VM3 do not join group 224.1.1.1, and VM1 joins group 224.1.1.1. The server 40 sends the multicast traffic of the group 224.1.1.1, and the router 30 receives the multicast traffic of 224.1.1.1 from the interface 7, hits the multicast forwarding table, and forwards the multicast traffic from the interface 8. VTEP B receives 224.1.1.1 multicast traffic from interface 5, hits the multicast forwarding table, and forwards the traffic from interface 6 to VTEP a through VXLAN tunnels. The VTEP a receives the traffic from the VXLAN tunnel from the interface 3, decapsulates the traffic, hits the multicast forwarding table, sends the traffic from the interface 1 to the VM1, and routes the multicast traffic forward as in (1) - (5) in fig. 5.
In this embodiment, in order to reduce the number of IGMP messages in the VXLAN network, generally, an IGMP snooping proxy technology is adopted, and a device serving as an IGMP snooping proxy comprehensively calculates IGMP reports of a host, forms a device-based IGMP state machine, and reduces the number of IGMP messages reaching an querier based on device response IGMP queries, thereby reducing the burden of a querier control plane. However, multicast traffic is still forwarded centrally through the querier, the querier forwarding plane is still heavily burdened, and the querier forwarding plane still has loop problems.
In order to solve the above problem in the scenario where the IGMP Snooping agent exists, the present embodiment further provides a manner of processing the IGMP report message when the first VTEP device runs with the IGMP Snooping agent:
receiving an IGMP report message;
generating an IGMP agent report message according to the IGMP report message and sending the IGMP agent report message.
In this embodiment, after receiving the IGMP report message, the IGMP Snooping proxy does not forward the message, but terminates the message and continues forwarding, and the IGMP Snooping proxy generates and sends an IGMP proxy report message in the role of the host.
In this embodiment, in order to avoid unnecessary IGMP messaging when there is an IGMP Snooping proxy, this embodiment provides an implementation manner of sending a generated IGMP proxy report message:
If the state of the access side proxy database is changed from a non-forwarding state to a forwarding state, generating an IGMP proxy addition report message according to the IGMP report message, and sending the IGMP proxy addition report message to a router side interface;
if the state of the access side proxy database is changed from the forwarding state to the non-forwarding state, generating an IGMP proxy leaving report message according to the IGMP report message and sending the IGMP proxy leaving report message to a router side interface.
In this embodiment, the access side proxy database is in a forwarding state, which means that the first VTEP device can normally forward the message through the router side interface, and if the access side data is in a non-forwarding state, which means that the message cannot be forwarded normally, in order to avoid unnecessary message forwarding, the corresponding message is sent only when the state of the access side proxy database changes, otherwise, the message is not sent.
The embodiment also provides a judging mode for determining the change of the state of the access side proxy database:
if the IGMP report message is an IGMP adding report message and before the IGMP report message is received, the access side proxy database does not have members of the access side interface or members of the tunnel side interface, judging that the access side proxy database is changed from a non-forwarding state to a forwarding state;
If the IGMP report message is an IGMP leave report message, and before the IGMP report message is received, the member of the access side interface or the member of the tunnel side interface exists in the access side proxy database, and after the IGMP report message is received, the member of the access side interface does not exist in the access side proxy database and the member of the tunnel side interface does not exist in the access side proxy database, then the access side proxy database is judged to be changed from a forwarding state to a non-forwarding state.
In this embodiment, the access side proxy database may include one or more multicast groups, and when the IGMP report message is for a specified multicast group and determines that the state of the access side proxy database changes, the IGMP report message is also determined by whether there is a member of an access side interface or a member of a tunnel side interface of the specified multicast group in the access side proxy database, and one implementation manner may be: firstly, acquiring a multicast address in an IGMP report message, determining a multicast group of the IGMP report message according to the multicast address, determining a target multicast group which is the same as the multicast group of the IGMP message in one or more multicast groups in an access side proxy database, and judging that the access side proxy database is changed from a non-forwarding state to a forwarding state if the IGMP report message is an IGMP joining report message and before the IGMP report message is received, no member of an access side interface or a member of a tunnel side interface of the target multicast group exists in the access side proxy database; if the IGMP report packet is an IGMP leave report packet, and before the IGMP report packet is received, the member of the access side interface or the member of the tunnel side interface of the target multicast group exists in the access side proxy database, and after the IGMP report packet is received, the member of the access side interface of the target multicast group does not exist in the access side database, and the member of the tunnel side interface of the target multicast group does not exist either, then the access side database is determined to be changed from the forwarding state to the non-forwarding state.
In addition to providing an implementation manner of sending the generated IGMP proxy report message to the router side interface, the present embodiment also provides an implementation manner of sending the generated IGMP proxy report message to the tunnel side interface:
if the state of the tunnel side proxy database is changed from the non-forwarding state to the forwarding state, generating an IGMP proxy addition report message according to the IGMP report message, and sending the IGMP proxy addition report message to the tunnel side interface;
if the state of the tunnel side proxy database is changed from the forwarding state to the non-forwarding state, generating an IGMP proxy leave report message according to the IGMP report message, and sending the IGMP proxy leave report message to the tunnel side interface.
In this embodiment, since the addition of the tunnel side interfaces does not involve the calculation range of the tunnel side proxy database, the state change of the tunnel side proxy database is not affected, and the determination method of the state change of the tunnel side proxy database is as follows:
if the IGMP report message is an IGMP adding report message, and before receiving the IGMP report message, the tunnel side proxy database does not have a member of the access side interface, and after receiving the IGMP message, the tunnel side proxy database has a member of the access side interface, judging that the tunnel side proxy database is changed from a non-forwarding state to a forwarding state;
If the IGMP report message is an IGMP leave report message, and before receiving the IGMP report message, the member of the access side interface exists in the tunnel side proxy database, and after receiving the IGMP report message, the member of the access side interface does not exist in the tunnel side proxy database, the tunnel side proxy database is judged to be changed from a forwarding state to a non-forwarding state.
It should be noted that, similar to the access side proxy database, the tunnel side proxy database may also include one or more multicast groups, the IGMP report message is for a specified multicast group, and when determining that the state of the tunnel side proxy database changes, the determination is made by whether there is a member of the access side interface of the specified multicast group in the tunnel side proxy database, and one implementation manner may be that: firstly, acquiring a multicast address in an IGMP report message, determining a multicast group of the IGMP report message according to the multicast address, determining a target multicast group which is the same as the multicast group of the IGMP message in one or more multicast groups in a tunnel side proxy database, and then, if the IGMP report message is an IGMP joining report message and before the IGMP report message is received, determining that the tunnel side proxy database is changed from a non-forwarding state to a forwarding state if no member of an access side interface of the target multicast group exists in the tunnel side proxy database and no member of the access side interface exists in the tunnel side database after the IGMP report message is received; if the IGMP report message is an IGMP leave report message, before the IGMP report message is received, a member of the access side interface of the target multicast group exists in the tunnel side proxy database, and after the IGMP report message is received, no member of the access side interface of the target multicast group exists in the tunnel side database, then the tunnel side database is judged to be changed from a forwarding state to a non-forwarding state.
It should be noted that, similar to the foregoing embodiment, the VTEP device 10 still updates the local forwarding table after receiving the IGMP proxy report message, adds the host side interface or the tunnel side interface for receiving the join report message to the forwarding table according to the interface for receiving the join report message, and deletes the host side interface or the tunnel side interface for receiving the leave report message from the forwarding table according to the interface for receiving the leave report message.
In this embodiment, in order to enable other devices in the VXLAN network to learn the latest messages of multicast members in time when there is an IGMP Snooping agent, this embodiment further provides an implementation manner of responding to an IGMP query message:
if the access side proxy database is in a forwarding state, sending an IGMP adding report message of the access side proxy database to the router side interface.
In this embodiment, the IGMP join report packet may use the IP address of its own interface as the source IP address, or may use a preset IP address as the source IP address, and send the IGMP join report packet with its own join multicast address as the destination, where the access side proxy database is in a forwarding state, and then sends the multicast address in the IGMP join report packet to the router side interface as the multicast address in the access side proxy database, and where the tunnel side proxy database is in a forwarding state, and then sends the multicast address in the IGMP join report packet to the tunnel side interface as the multicast address of the tunnel side proxy database.
In this embodiment, in order to more clearly describe the processing procedure of the IGMP message when the IGMP Snooping proxy exists, please refer to fig. 6 to 8, and fig. 6 to 8 are the processing procedures of the IGMP message when VM1, VM2, and VM3 sequentially join the multicast group. Referring to fig. 6, fig. 6 is an exemplary diagram of processing an IGMP message when a VM1 joins a multicast group according to the present embodiment, where the processing procedure is as follows:
(1) the VTEP A sends an IGMP inquiry message to the interface 1;
(2) VM1 responds to the IGMP inquiry message and sends an IGMP adding message with the group address of 224.1.1.1;
(3) interface 1 of the VTEP a receives the IGMP join report message with the group address of 224.1.1.1, generates (VXLAN is 100, the group address is 224.1.1.1) a forwarding table, and sets interface 1 as the forwarding interface; the VTEP a computes the change from the non-forwarding state to the forwarding state for the group 224.1.1.1 of access side proxy databases, and no such state update is sent since there is no access side router interface on the VTEP a.
(4) The VTEP a calculates the group 224.1.1.1 of the tunnel side proxy database from the non-forwarding state to the forwarding state and sends an IGMP join report of the group 224.1.1.1 to the tunnel side interface 3.
(5) After receiving the message encapsulated by the VXLAN, the interface 6 of the VTEP B processes the IGMP added message with the VXLAN of the VTEP A of 100 and the group address of 224.1.1.1; VTEP B generates a forwarding table (VXLAN 100, group address 224.1.1.1) and sets interface 6 as the forwarding interface.
(6) The VTEP B calculates that the group 224.1.1.1 of the access side proxy database is changed from the non-forwarding state to the forwarding state, and sends an IGMP addition report of the group 224.1.1.1 to the router interface 5 of the VTEP; the VTEP B calculates the tunnel side proxy database, which is unchanged because the addition of the tunnel side interfaces does not fit into the calculation range of the tunnel side proxy database.
(7) The router receives the IGMP message from the interface 8, establishes a multicast forwarding table according to PIM protocol, and the interface 8 is set as a forwarding interface.
Referring to fig. 7, fig. 7 is an exemplary diagram of processing an IGMP message when a VM2 joins a multicast group according to the present embodiment, where the processing procedure is as follows:
(1) the VTEP A sends an IGMP inquiry message to the interface 2;
(2) VM2 sends an IGMP join message with a group address of 224.1.1.1.
(3) Interface 2 of the VTEP A receives the IGMP adding message with the group address of 224.1.1.1; the VTEP A adds an interface 2 as a forwarding interface in a forwarding table (VXLAN is 100, and the group address is 224.1.1.1), and the forwarding interface is provided with an interface 1 and an interface 2; the VTEP A calculates an access side proxy database, the forwarding state of the group 224.1.1.1 is unchanged, and IGMP adding messages are not sent to an access side interface; the VTEP a calculates the tunnel side proxy database with the forwarding state of group 224.1.1.1 unchanged and does not send IGMP join messages to the tunnel side interface.
With continued reference to fig. 8, fig. 8 is an exemplary diagram of processing an IGMP message when a VM3 joins a multicast group according to the present embodiment, where the processing procedure is as follows:
(1) the VTEP B sends an IGMP inquiry message to the interface 4;
(2) VM3 sends an IGMP join message with a group address of 224.1.1.1.
(3) The interface 4 of the VTEP B receives the IGMP adding message with the group address of 224.1.1.1; the VTEP B adds an interface 4 as a forwarding interface in a forwarding table (VXLAN is 100, the group address is 224.1.1.1), and the forwarding table is provided with the forwarding interface 4 and an interface 6; the VTEP B computes the access side proxy database, the forwarding state of group 224.1.1.1 is unchanged, and no IGMP join message is sent to interface 5.
(4) VTEP B calculates the tunnel side proxy database, changes the group 224.1.1.1 from the non-forwarding state to the forwarding state, and sends an IGMP join report for the group 224.1.1.1 to the interface 6.
(5) After receiving the message encapsulated by the VXLAN, the interface 3 of the VTEP A processes the IGMP added message with the VXLAN of the VTEP B being 100 and the group address being 224.1.1.1; VTEP a adds interface 3 as a forwarding interface in the forwarding table (VXLAN is 100, group address is 224.1.1.1). At this time, the forwarding table is provided with a forwarding interface 1, an interface 2 and an interface 3; the VTEP a calculates an access side proxy database with the forwarding state of group 224.1.1.1 unchanged; the VTEP A calculates the tunnel side proxy database, which is unchanged because the addition of the tunnel side interfaces does not fit into the calculation range of the tunnel side proxy database.
In order to more clearly illustrate the forwarding process of the multicast traffic when the IGMP Snooping proxy exists, please refer to fig. 9, fig. 9 is an exemplary diagram of forwarding the multicast traffic provided in this embodiment, and the process of the server sending the multicast traffic of the group 224.1.1.1 is as shown by the solid arrow line in fig. 9:
(1) the router receives 224.1.1.1 multicast traffic from interface 7, hits the multicast forwarding table, and forwards from interface 8.
(2) VTEP B receives 224.1.1.1 multicast traffic from interface 5, hits the multicast forwarding table, forwards traffic from interface 6 to VTEP a via VXLAN tunnel, and from interface 4 to VM3.
(3) The VTEP a receives the traffic from the VXLAN tunnel from the interface 3, decapsulates the traffic, hits the multicast forwarding table, forwards the traffic from the interface 1 to the VM1, and forwards the traffic from the interface 2 to the VM2.
The processing procedure of the VM1 transmitting the multicast traffic of the group 224.1.1.1 is as shown by the dashed arrow line in fig. 9:
(4) the VTEP a receives 224.1.1.1 multicast traffic from interface 1.
(5) The VTEP a decides to hit the multicast forwarding table, forwards to VM2 to interface 2, and forwards to VTEP B to interface 3.
(6) The VTEP B receives 224.1.1.1 multicast traffic from interface 6.
(7) VTEP B decides to hit the multicast forwarding table and forwards it to VM3 towards interface 4. Multicast traffic entering the tunnel is prevented from being forwarded from the tunnel, so that the multicast traffic cannot be sent out from the tunnel interface 6, and a traffic loop is avoided.
In this embodiment, since the first VTEP device does not receive the IGMP query message from the tunnel side interface, in order to learn the situation of the IGMP membership in time, this embodiment further provides a processing manner:
and periodically sending an IGMP (Internet group management protocol) joining report message of the tunnel side proxy database to the tunnel side interface.
In this embodiment, the IGMP join report message is described in the foregoing, and will not be described herein.
In order to perform the above embodiments and the corresponding steps in each possible implementation, an implementation of the IGMP message processing apparatus 100 is given below. Referring to fig. 10, fig. 10 is a block diagram of an IGMP message processing apparatus 100 according to an embodiment of the invention. It should be noted that, the basic principle and the technical effects of the IGMP message processing apparatus 100 provided in this embodiment are the same as those of the above embodiment, and for brevity, this embodiment is not mentioned in the description.
The IGMP message processing apparatus 100 is applied to a first VTEP device in a VXLAN network of a virtual extensible local area network, where the first VTEP device includes a tunnel side interface and an access side interface, the first VTEP device communicates with a second VTEP device in the VXLAN network through the tunnel side interface, and the first VTEP device communicates with a host or a router through the access side interface, where the IGMP message processing apparatus 100 includes an acquisition module 110 and a processing module 120.
An obtaining module 110, configured to obtain an IGMP query message;
a processing module 120, configured to send an IGMP query message and prohibit sending the IGMP query message to the tunnel side interface if the IGMP query message is received from the access side interface or generated by the first VTEP device itself;
the processing module 120 is further configured to discard the IGMP query message if the IGMP query message is received from the tunnel side interface.
In an alternative embodiment, the access interface comprises a router-side interface for communicating with the router and a host-side interface for communicating with the host, the processing module 120 further being configured to: receiving an IGMP report message; if the IGMP report message is received from the host side interface, forwarding the IGMP report message to the router side interface and the tunnel side interface; if the IGMP report message is received from the tunnel side interface, forwarding the IGMP report message to the router side interface.
In an alternative embodiment, the access interface comprises a router-side interface for communicating with the router and a host-side interface for communicating with the host, the first VTEP device running an IGMP Snooping proxy, the processing module 120 further being for: receiving an IGMP report message; generating an IGMP agent report message according to the IGMP report message and sending the IGMP agent report message.
In an alternative embodiment, the first VTEP device further includes an access-side proxy database, and the processing module 120 is specifically configured to, when configured to generate an IGMP proxy report message from the IGMP report message and send the IGMP proxy report message: if the state of the access side proxy database is changed from the non-forwarding state to the forwarding state, generating an IGMP proxy addition report message according to the IGMP report message, and sending the IGMP proxy addition report message to a router side interface; if the state of the access side proxy database is changed from the forwarding state to the non-forwarding state, generating an IGMP proxy leave report message according to the IGMP report message, and sending the IGMP proxy leave report message to the router side interface.
In an alternative embodiment, the processing module 120 is further configured to: if the IGMP report message is an IGMP adding report message and before the IGMP report message is received, the access side proxy database does not have members of the access side interface or members of the tunnel side interface, judging that the access side proxy database is changed from a non-forwarding state to a forwarding state; if the IGMP report message is an IGMP leave report message, and before the IGMP report message is received, the member of the access side interface or the member of the tunnel side interface exists in the access side proxy database, and after the IGMP report message is received, the member of the access side interface does not exist in the access side proxy database and the member of the tunnel side interface does not exist in the access side proxy database, then the access side proxy database is judged to be changed from a forwarding state to a non-forwarding state.
In an alternative embodiment, the first VTEP device further includes a tunnel side proxy database, and the processing module 120 is specifically configured to, when configured to generate an IGMP proxy report message according to the IGMP report message, and send the IGMP proxy report message: if the state of the tunnel side proxy database is changed from the non-forwarding state to the forwarding state, generating an IGMP proxy addition report message according to the IGMP report message, and sending the IGMP proxy addition report message to the tunnel side interface; if the state of the tunnel side proxy database is changed from the forwarding state to the non-forwarding state, generating an IGMP proxy leave report message according to the IGMP report message, and sending the IGMP proxy leave report message to the tunnel side interface.
In an alternative embodiment, the first VTEP device further includes a tunnel side proxy database, and the processing module 120 is further configured to: if the IGMP report message is an IGMP adding report message, and before receiving the IGMP report message, the tunnel side proxy database does not have a member of the access side interface, and after receiving the IGMP message, the tunnel side proxy database has a member of the access side interface, judging that the tunnel side proxy database is changed from a non-forwarding state to a forwarding state; if the IGMP report message is an IGMP leave report message, and before receiving the IGMP report message, the member of the access side interface exists in the tunnel side proxy database, and after receiving the IGMP report message, the member of the access side interface does not exist in the tunnel side proxy database, the tunnel side proxy database is judged to be changed from a forwarding state to a non-forwarding state.
In an alternative embodiment, the first VTEP device further comprises an access side proxy database and a tunnel side proxy database, the access side interface comprising a router side interface for communicating with a router and a host side interface for communicating with a host, the processing module 120 further being configured to: if the access side proxy database is in a forwarding state, sending an IGMP adding report message of the access side proxy database to the router side interface.
In an alternative embodiment, the processing module 120 is further configured to: and periodically sending an IGMP (Internet group management protocol) joining report message of the tunnel side proxy database to the tunnel side interface.
The embodiment of the invention also provides a computer readable storage medium, on which a computer program is stored, which when executed by a processor implements the IGMP message processing method of any of the foregoing embodiments.
In summary, the embodiments of the present invention provide an IGMP message processing method, an apparatus, a VTEP device and a storage medium, which are applied to a first VTEP device in a VXLAN network of a virtual extensible local area network, where the first VTEP device includes a tunnel side interface and an access side interface, the first VTEP device communicates with a second VTEP device in the VXLAN network through the tunnel side interface, and the first VTEP device communicates with a host or a router through the access side interface, where the method includes: acquiring an Internet Group Management Protocol (IGMP) query message; if the IGMP inquiry message is received from the access side interface or generated by the first VTEP equipment, sending the IGMP inquiry message and prohibiting sending the IGMP inquiry message to the tunnel side interface; if the IGMP query message is received from the tunnel side interface, the IGMP query message is discarded. Compared with the prior art, the embodiment of the invention has the following advantages: the IGMP inquiry messages received by the non-tunnel side interfaces are forbidden to be sent through the VXLAN tunnel, and the IGMP inquiry messages received by the tunnel side interfaces are discarded, namely the IGMP inquiry messages are not sent through the tunnel side interfaces, so that the first VTEP equipment and the second VTEP equipment in the VXLAN network can not learn the IGMP inquiry messages of the other party, the election of an inquirer is avoided, the problem that the forwarding load is excessive due to the centralized processing of multicast traffic by the elected inquirer is further avoided, and the forwarding efficiency of the multicast traffic is improved; when receiving an IGMP (Internet group management protocol) joining message, adding a target interface for receiving the message to a forwarding table, and setting the target interface as the forwarding interface so as to forward multicast traffic between the VTEP equipment, a host and other VTEP equipment through the forwarding table without forwarding of a third VTEP equipment, thereby reducing bandwidth pressure caused by forwarding the multicast traffic; by prohibiting forwarding of multicast traffic received from the tunnel side interface to the tunnel side interface, the multicast traffic is prevented from forming a loop in the VXLAN network; when the IGMP snoring agent exists, the IGMP message is sent through the state change of the access side agent database and the tunnel side agent database, so that unnecessary message sending is reduced, and the bandwidth pressure of the message sending is further reduced.
The foregoing is merely illustrative of the present invention, and the present invention is not limited thereto, and any changes or substitutions easily contemplated by those skilled in the art within the scope of the present invention should be included in the present invention. Therefore, the protection scope of the invention is subject to the protection scope of the claims.

Claims (12)

1. An IGMP message processing method, applied to a first VTEP device in a VXLAN network of a virtual extensible local area network, where the first VTEP device includes a tunnel side interface and an access side interface, where the first VTEP device communicates with a second VTEP device in the VXLAN network through the tunnel side interface, and where the first VTEP device communicates with a host or a router through the access side interface, the method includes:
acquiring an Internet Group Management Protocol (IGMP) query message;
if the IGMP inquiry message is received from the access side interface or generated by the first VTEP equipment, sending the IGMP inquiry message and prohibiting sending the IGMP inquiry message to the tunnel side interface;
and discarding the IGMP inquiry message if the IGMP inquiry message is received from the tunnel interface.
2. The IGMP message processing method of claim 1, wherein the access side interface comprises a router side interface for communicating with the router and a host side interface for communicating with the host, the method further comprising:
receiving an IGMP report message;
forwarding the IGMP report message to the router side interface and the tunnel side interface if the IGMP report message is received from the host side interface;
and if the IGMP report message is received from the tunnel side interface, forwarding the IGMP report message to the router side interface.
3. The IGMP message processing method of claim 1, wherein the access side interface comprises a router side interface for communicating with the router and a host side interface for communicating with the host, the first VTEP device running an IGMP Snooping proxy, the method further comprising:
receiving an IGMP report message;
generating an IGMP agent report message according to the IGMP report message and sending the IGMP agent report message.
4. The IGMP message processing method as claimed in claim 3, wherein the first VTEP device further comprises an access side proxy database, the generating an IGMP proxy report message from the IGMP report message and transmitting the IGMP proxy report message comprises:
If the state of the access side proxy database is changed from a non-forwarding state to a forwarding state, generating an IGMP proxy addition report message according to the IGMP report message, and sending the IGMP proxy addition report message to the router side interface;
if the state of the access side proxy database is changed from the forwarding state to the non-forwarding state, generating an IGMP proxy leaving report message according to the IGMP report message and sending the IGMP proxy leaving report message to the router side interface.
5. The IGMP message processing method of claim 4, further comprising:
if the IGMP report message is an IGMP adding report message and before the IGMP report message is received, no member of an access side interface or no member of a tunnel side interface exists in the access side proxy database, judging that the access side proxy database is changed from a non-forwarding state to a forwarding state;
and if the IGMP report message is an IGMP leave report message, before the IGMP report message is received, the member of the access side interface or the member of the tunnel side interface exists in the access side proxy database, and after the IGMP report message is received, the member of the access side interface does not exist in the access side proxy database and the member of the tunnel side interface does not exist in the access side proxy database, judging that the access side proxy database is changed from a forwarding state to a non-forwarding state.
6. The IGMP message processing method as claimed in claim 3, wherein the first VTEP device further comprises a tunnel side proxy database, the generating an IGMP proxy report message from the IGMP report message and transmitting the IGMP proxy report message comprises:
if the state of the tunnel side proxy database is changed from a non-forwarding state to a forwarding state, generating an IGMP proxy addition report message according to the IGMP report message, and sending the IGMP proxy addition report message to the tunnel side interface;
if the state of the tunnel side proxy database is changed from the forwarding state to the non-forwarding state, generating an IGMP proxy leaving report message according to the IGMP report message, and sending the IGMP proxy leaving report message to the tunnel side interface.
7. The IGMP message processing method of claim 6, wherein the first VTEP device further comprises a tunnel side proxy database, the method further comprising:
if the IGMP report message is an IGMP adding report message, and before the IGMP report message is received, no member of an access side interface exists in the tunnel side proxy database, and after the IGMP message is received, the tunnel side proxy database is judged to be changed from a non-forwarding state to a forwarding state;
If the IGMP report message is an IGMP leave report message, and before the IGMP report message is received, the member of the access side interface exists in the tunnel side proxy database, and after the IGMP report message is received, the member of the access side interface does not exist in the tunnel side proxy database, then the tunnel side proxy database is judged to be changed from a forwarding state to a non-forwarding state.
8. The IGMP message processing method of claim 1, wherein the first VTEP device further comprises an access side proxy database and a tunnel side proxy database, the access side interface comprising a router side interface for communicating with the router and a host side interface for communicating with the host, the method further comprising:
and if the access side proxy database is in a forwarding state, sending an IGMP adding report message of the access side proxy database to the router side interface.
9. The IGMP message processing method of claim 8, wherein the method further comprises:
and periodically sending an IGMP (Internet group management protocol) joining report message of the tunnel side proxy database to the tunnel side interface.
10. An IGMP message processing apparatus, applied to a first VTEP device in a virtual extensible local area network VXLAN network, the first VTEP device including a tunnel side interface through which the first VTEP device communicates with a second VTEP device in the VXLAN network, and an access side interface through which the first VTEP device communicates with a host or a router, the apparatus comprising:
The acquisition module is used for acquiring an Internet Group Management Protocol (IGMP) query message;
the processing module is used for sending the IGMP inquiry message and prohibiting the IGMP inquiry message from being sent to the tunnel side interface if the IGMP inquiry message is received from the access side interface or is generated by the first VTEP equipment;
the processing module is further configured to discard the IGMP query message if the IGMP query message is received from the tunnel interface.
11. VTEP device, characterized in that it comprises a processor and a memory, said memory being adapted to store a program, said processor being adapted to implement the IGMP message processing method of any of claims 1-9 when said program is executed.
12. A computer-readable storage medium, on which a computer program is stored which, when executed by a processor, implements the IGMP message processing method as claimed in any one of claims 1 to 9.
CN202211511461.6A 2022-11-29 2022-11-29 IGMP message processing method, device, VTEP device and storage medium Active CN115883286B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211511461.6A CN115883286B (en) 2022-11-29 2022-11-29 IGMP message processing method, device, VTEP device and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211511461.6A CN115883286B (en) 2022-11-29 2022-11-29 IGMP message processing method, device, VTEP device and storage medium

Publications (2)

Publication Number Publication Date
CN115883286A CN115883286A (en) 2023-03-31
CN115883286B true CN115883286B (en) 2024-04-09

Family

ID=85764641

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211511461.6A Active CN115883286B (en) 2022-11-29 2022-11-29 IGMP message processing method, device, VTEP device and storage medium

Country Status (1)

Country Link
CN (1) CN115883286B (en)

Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102075422A (en) * 2011-01-04 2011-05-25 杭州华三通信技术有限公司 Multicast management method and two-layer equipment
CN102075439A (en) * 2011-02-22 2011-05-25 杭州华三通信技术有限公司 Multicast message transmitting method and routing equipment
CN103814554A (en) * 2013-12-11 2014-05-21 华为技术有限公司 Communication method, device and system of virtual extensible local area network
CN103841037A (en) * 2012-11-21 2014-06-04 华为技术有限公司 Multicast packet forwarding method and devices
CN104579704A (en) * 2013-10-18 2015-04-29 杭州华三通信技术有限公司 Multicast data message forwarding method and device
CN107612809A (en) * 2017-10-31 2018-01-19 新华三技术有限公司 A kind of multicast list synchronous method and equipment
US9935782B1 (en) * 2015-04-14 2018-04-03 Cisco Technology, Inc. Scalable internet group management protocol (IGMP) snooping in a switch fabric
CN108881024A (en) * 2018-05-31 2018-11-23 新华三技术有限公司 A kind of flux of multicast retransmission method and device
CN108880968A (en) * 2017-05-11 2018-11-23 中兴通讯股份有限公司 Broadcast, method of realizing group broadcasting and device, storage medium in software defined network
WO2018214809A1 (en) * 2017-05-23 2018-11-29 中兴通讯股份有限公司 Message transmission method and device, and storage medium
CN109039675A (en) * 2018-09-26 2018-12-18 盛科网络(苏州)有限公司 Member based on IGMPv2 agreement leaves management method and system
CN109818869A (en) * 2017-11-22 2019-05-28 北京华为数字技术有限公司 The generation method and relevant device of flux of multicast forwarding port
US10749741B1 (en) * 2019-04-25 2020-08-18 Dell Products L.P. Methods and systems for auto-discovery of VXLAN VTEPs using PIM BSR

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10880112B2 (en) * 2017-12-31 2020-12-29 Arista Networks, Inc. Multicast traffic in a virtual extensible local area network (VXLAN)

Patent Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102075422A (en) * 2011-01-04 2011-05-25 杭州华三通信技术有限公司 Multicast management method and two-layer equipment
CN102075439A (en) * 2011-02-22 2011-05-25 杭州华三通信技术有限公司 Multicast message transmitting method and routing equipment
CN103841037A (en) * 2012-11-21 2014-06-04 华为技术有限公司 Multicast packet forwarding method and devices
CN104579704A (en) * 2013-10-18 2015-04-29 杭州华三通信技术有限公司 Multicast data message forwarding method and device
CN103814554A (en) * 2013-12-11 2014-05-21 华为技术有限公司 Communication method, device and system of virtual extensible local area network
US9935782B1 (en) * 2015-04-14 2018-04-03 Cisco Technology, Inc. Scalable internet group management protocol (IGMP) snooping in a switch fabric
CN108880968A (en) * 2017-05-11 2018-11-23 中兴通讯股份有限公司 Broadcast, method of realizing group broadcasting and device, storage medium in software defined network
WO2018214809A1 (en) * 2017-05-23 2018-11-29 中兴通讯股份有限公司 Message transmission method and device, and storage medium
CN107612809A (en) * 2017-10-31 2018-01-19 新华三技术有限公司 A kind of multicast list synchronous method and equipment
CN109818869A (en) * 2017-11-22 2019-05-28 北京华为数字技术有限公司 The generation method and relevant device of flux of multicast forwarding port
CN108881024A (en) * 2018-05-31 2018-11-23 新华三技术有限公司 A kind of flux of multicast retransmission method and device
CN109039675A (en) * 2018-09-26 2018-12-18 盛科网络(苏州)有限公司 Member based on IGMPv2 agreement leaves management method and system
US10749741B1 (en) * 2019-04-25 2020-08-18 Dell Products L.P. Methods and systems for auto-discovery of VXLAN VTEPs using PIM BSR

Non-Patent Citations (6)

* Cited by examiner, † Cited by third party
Title
"A Management Method of IP Multicast in Overlay Networks using OpenFlow";Yukihiro Nakagawa,et al;《proceedings of the frist workshop on hot topics in software defined networks》;20121231;全文 *
"基于VLAN 的IGMP Proxy 的设计与实现";包莉娜;《中国优秀硕士学位论文全文数据库》;20181231;全文 *
HFC网络组播技术研究与实现;王沁;袁玲玲;张燕;许娜;李;;小型微型计算机***;20091115(第11期);全文 *
VPLS组播功能实现与研究;王小玲;;计算机光盘软件与应用;20131201(第23期);全文 *
基于IXA架构的IGMP Snooping协议的实现;石洋;;职大学报;20091215(第04期);全文 *
基于IXP2800处理器的IGMP Snooping协议的设计与实现;刘金花;;潍坊学院学报;20071115(第06期);全文 *

Also Published As

Publication number Publication date
CN115883286A (en) 2023-03-31

Similar Documents

Publication Publication Date Title
JP6369698B2 (en) Traffic switching method, device, and system
US11374857B2 (en) Network device management method and apparatus, and system for indicating a network device to perform management operation
EP3188409A1 (en) Oam mechanisms for evpn active-active services
US9515927B2 (en) System and method for layer 3 proxy routing
CN112929274A (en) Method, equipment and system for processing route
US9838219B2 (en) Virtual local area network mismatch detection in networks
CN108964940B (en) Message sending method and device and storage medium
WO2021031648A1 (en) Evpn and vpls coexistence method, apparatus, and system
US9060322B2 (en) Method and system for preventing loops in mesh networks
EP3313031B1 (en) Sdn-based arp realization method and apparatus
WO2022001669A1 (en) Method for establishing vxlan tunnel, and related device
US20200177402A1 (en) Protocol independent multicast (pim) designated router (dr) election
US20230010837A1 (en) Fault diagnosis method and apparatus thereof
EP4191966A1 (en) Method and device for processing data message, storage medium, and electronic device
CN111083061B (en) Method, equipment and system for determining DF (distribution function) of multicast flow
CN112787934A (en) Method, device and equipment for load sharing in bit index explicit replication network
CN109167693B (en) Isolation configuration method and device based on cross-chassis link aggregation group (MLAG)
CN115883286B (en) IGMP message processing method, device, VTEP device and storage medium
CN114980243A (en) Data forwarding method and device and storage medium
Cisco Configuring MSDP
CN110324247B (en) Multicast forwarding method, device and storage medium in three-layer multicast network
WO2022194193A1 (en) Method and apparatus for acquiring path
CN113014481B (en) Method, device, equipment and storage medium for transmitting link state notification
CN116366593A (en) Message forwarding method and related device
CN116266821A (en) Message forwarding method and device

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