CN108881024B - Multicast traffic forwarding method and device - Google Patents

Multicast traffic forwarding method and device Download PDF

Info

Publication number
CN108881024B
CN108881024B CN201810551810.4A CN201810551810A CN108881024B CN 108881024 B CN108881024 B CN 108881024B CN 201810551810 A CN201810551810 A CN 201810551810A CN 108881024 B CN108881024 B CN 108881024B
Authority
CN
China
Prior art keywords
multicast
remote vtep
vtep device
target
multicast source
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
CN201810551810.4A
Other languages
Chinese (zh)
Other versions
CN108881024A (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.)
Hangzhou H3C Technologies Co Ltd
Original Assignee
Hangzhou H3C Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hangzhou H3C Technologies Co Ltd filed Critical Hangzhou H3C Technologies Co Ltd
Priority to CN201810551810.4A priority Critical patent/CN108881024B/en
Publication of CN108881024A publication Critical patent/CN108881024A/en
Application granted granted Critical
Publication of CN108881024B publication Critical patent/CN108881024B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • H04L45/745Address table lookup; Address filtering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4633Interconnection of networks using encapsulation techniques, e.g. tunneling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4641Virtual LANs, VLANs, e.g. virtual private networks [VPN]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing

Landscapes

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

Abstract

The invention provides a multicast flow forwarding method and a device, wherein the method comprises the following steps: when receiving a multicast forwarding table item which is synchronous with a first remote VTEP device and excludes a target multicast source, inquiring whether a multicast forwarding table item which contains the target multicast source and is under the same VXLAN identification ID synchronous with the first remote VTEP device exists; if the multicast traffic exists, when the multicast traffic of the target multicast source is received, forwarding the multicast traffic of the target multicast source to the first remote VTEP device through a virtual extensible local area network (VXLAN) tunnel between the first remote VTEP device and the target multicast source; if the multicast traffic of the target multicast source does not exist, when the multicast traffic of the target multicast source is received, the multicast traffic of the target multicast source is refused to pass through a VXLAN tunnel between the target multicast source and the first remote VTEP device, and the multicast traffic of the target multicast source is forwarded to the first remote VTEP device. The embodiment of the invention can avoid the waste of the bandwidth of the public network.

Description

Multicast traffic forwarding method and device
Technical Field
The present invention relates to the field of network communication technologies, and in particular, to a method and an apparatus for forwarding multicast traffic.
Background
VXLAN (Virtual Extensible Local Area Network) is a two-layer VPN (Virtual Private Network) technology based on an IP (Internet Protocol) Network and adopting a "MAC (Media Access Control) in UDP (User Datagram Protocol)" encapsulation form. VXLAN can provide two-layer interconnection for dispersed physical sites based on existing service provider or enterprise IP networks and can provide service isolation for different tenants.
An EVPN (Ethernet Virtual Private Network) is a two-layer VPN technology, where a control plane uses MP-BGP (multi Protocol Border Gateway Protocol) to announce EVPN routing information, and a data plane uses VXLAN encapsulation to forward a packet.
At present, for EVPN networking, in order to improve the reliability of an access side, a protocol specifies multi-homing access networking for better guaranteeing the reliability of a service.
Referring to fig. 1, which is a schematic diagram of a typical EVPN multi-homing access networking architecture, as shown in fig. 1, a host 1 device simultaneously accesses 2 VTEP (VXLAN Tunnel End Point) devices, respectively VTEP1 and VTEP3, through a switch LSW to form a multi-homing access.
In the EVPN multihoming access network shown in fig. 1, if the EVPN multihoming access network supports IGMP Snooping (Internet Group Management Protocol Snooping), the multicast join message sent by the host 1 is hashed on the switch LSW between the host 1 and VTEP1 and VTEP3, and the hash is performed to VTEP1 or VTEP 3.
Assuming that the multicast join message of the host 1 is hashed to VTEP1, when receiving the multicast join message of the host 1, VTEP1 generates a corresponding IGMP Snooping multicast forwarding entry (hereinafter referred to as a multicast forwarding entry), and synchronizes the multicast forwarding entry to VTEP2 and VTEP 3.
After the multicast source sends the multicast traffic to VTEP2, the multicast forwarding table entry on VTEP2 is queried, the multicast forwarding table entry is forwarded to VTEP1, and finally the multicast packet is sent to host 1.
However, practice shows that, in the current EVPN multihoming access networking supporting IGMP Snooping, for multicast forwarding entries corresponding to hosts joining the same Group, a VTEP device only synchronizes one multicast forwarding entry to a remote VTEP device, and if there is a (#, G) forwarding entry, combines the synchronized (#, G) forwarding entries to the remote VTEP device.
Assuming that in the EVPN multihoming access network shown in fig. 1, the host 1 sends a multicast join packet, which carries information for excluding the multicast source S, the VTEP1 generates a multicast forwarding entry (, G)/exclude (S, G). When synchronizing the multicast forwarding table entry to VTEP2, VTEP1 merges the multicast forwarding table entry (, G)/exception (S, G) into an (, G) forwarding table entry and synchronizes to VTEP2, that is, when the host has a requirement to exclude the multicast source S, VTEP1 does not synchronize the exception (S, G) forwarding table entry to remote VTEP 2.
When the multicast source S sends the multicast traffic, although there is a requirement on the VTEP1 to exclude the multicast source S, the VTEP2 does not distinguish the multicast traffic, and directly sends all the multicast traffic to the VTEP1, and queries the table entry on the VTEP1 to exclude the source from forwarding, so that the multicast traffic of the unnecessary multicast source S occupies the bandwidth of the core network.
Disclosure of Invention
The invention provides a multicast traffic forwarding method and device, which are used for solving the problem that unnecessary multicast traffic occupies the bandwidth of a core network in the conventional EVPN multi-homing access networking.
According to a first aspect of the embodiments of the present invention, there is provided a multicast traffic forwarding method, applied to a VTEP device in an EVPN multihoming access networking supporting IGMP-Snooping, the method including:
when receiving a multicast forwarding table item which is synchronous with a first remote VTEP device and excludes a target multicast source, inquiring whether a multicast forwarding table item which contains the target multicast source and is under the same VXLAN identification ID synchronous with the first remote VTEP device exists; when a plurality of multicast forwarding entries of the same multicast group which need to be synchronized exist in the first remote VTEP device, synchronizing the multicast forwarding entries of the same multicast group to the VTEP device respectively;
if the multicast traffic exists, when the multicast traffic of the target multicast source is received, forwarding the multicast traffic of the target multicast source to the first remote VTEP device through a virtual extensible local area network (VXLAN) tunnel between the first remote VTEP device and the target multicast source;
if the multicast traffic of the target multicast source does not exist, when the multicast traffic of the target multicast source is received, the multicast traffic of the target multicast source is refused to pass through a VXLAN tunnel between the target multicast source and the first remote VTEP device, and the multicast traffic of the target multicast source is forwarded to the first remote VTEP device.
With reference to the first aspect, in a first possible implementation manner, when receiving a multicast forwarding entry excluding a target multicast source that is synchronized by a first remote VTEP device, the method further includes:
determining whether a second far-end VTEP device exists according to the received EVPN Ethernet segment ES route; the second remote VTEP device and the first remote VTEP device have the same Ethernet segment identifier ESI;
if the second remote VTEP equipment exists, inquiring whether a multicast forwarding table item containing the target multicast source under the same VXLAN ID synchronized by the second remote VTEP equipment exists;
if a multicast forwarding table item containing the target multicast source under the same VXLAN ID synchronized by the second remote VTEP device exists, when receiving the multicast traffic of the target multicast source, forwarding the multicast traffic of the target multicast source to the second remote VTEP device through a VXLAN tunnel between the second remote VTEP device and the target multicast source;
if the multicast forwarding table item containing the target multicast source under the same VXLAN ID synchronized by the second remote VTEP device does not exist, when the multicast flow of the target multicast source is received, the multicast flow of the target multicast source is refused to be forwarded to the second remote VTEP device through a VXLAN tunnel between the second remote VTEP device and the target multicast source.
With reference to the first possible implementation manner of the first aspect, in a second possible implementation manner, the determining whether a second remote VTEP device exists according to the received EVPN ES route includes:
determining an ESI existing on the first remote VTEP device based on the EVPN ES route from the first remote VTEP device;
for any ESI existing on the first remote VTEP device, determining whether an EVPN ES route exists for which other remote VTEP devices send the ESI;
if yes, determining the other remote VTEP equipment as second remote VTEP equipment;
and if no EVPN ES route which sends the same ESI by other remote VTEP equipment exists for each ESI existing on the first remote VTEP equipment, determining that no second remote VTEP equipment exists.
With reference to the first aspect, in a third possible implementation manner, when receiving a multicast forwarding entry excluding a target multicast source that is synchronized by a first remote VTEP device, the method further includes:
when the multicast forwarding table entry excluding the target multicast source also carries an extended group for indicating that the first remote VTEP equipment has multi-homing member access, determining second remote VTEP equipment having the same ESI as the first remote VTEP equipment according to the received EVPN ES route;
inquiring whether a multicast forwarding table item containing the target multicast source under the same VXLAN ID synchronized by the second remote VTEP equipment exists;
if the multicast traffic exists, when the multicast traffic of the target multicast source is received, forwarding the multicast traffic of the target multicast source to the second remote VTEP device through a VXLAN tunnel between the second remote VTEP device and the target multicast source;
if the multicast traffic of the target multicast source does not exist, when the multicast traffic of the target multicast source is received, the multicast traffic of the target multicast source is refused to pass through a VXLAN tunnel between the target multicast source and the second remote VTEP equipment, and the multicast traffic of the target multicast source is forwarded to the second remote VTEP equipment.
With reference to the third possible implementation manner of the first aspect, in a fourth possible implementation manner, when receiving a multicast forwarding entry excluding a target multicast source that is synchronized by a first remote VTEP device, the method further includes:
and when the multicast forwarding table entry of the exclusion target multicast source does not carry the extended community attribute, determining that the first remote VTEP equipment does not have multi-homing member access.
According to a second aspect of the present invention, there is provided a multicast traffic forwarding apparatus applied to a VTEP device in an EVPN multihoming access networking supporting IGMP-Snooping, the apparatus including:
a receiving unit, configured to receive a multicast forwarding table entry;
a query unit, configured to query whether there is a multicast forwarding entry that includes the target multicast source under the same VXLAN identifier ID synchronized by the first remote VTEP device when the receiving unit receives the multicast forwarding entry that excludes the target multicast source and is synchronized by the first remote VTEP device; when a plurality of multicast forwarding entries of the same multicast group which need to be synchronized exist in the first remote VTEP device, synchronizing the multicast forwarding entries of the same multicast group to the VTEP device respectively;
a sending unit, configured to forward, if there is a multicast forwarding entry that includes the target multicast source under the same VXLAN ID synchronized by the first remote VTEP device, the multicast traffic of the target multicast source to the first remote VTEP device through a virtual extensible local area network VXLAN tunnel between the receiving unit and the first remote VTEP device when the receiving unit receives the multicast traffic of the target multicast source;
the sending unit is further configured to, if there is no multicast forwarding entry including the target multicast source under the same VXLAN ID synchronized by the first remote VTEP device, deny the multicast traffic of the target multicast source from passing through a VXLAN tunnel between the receiving unit and the first remote VTEP device when the receiving unit receives the multicast traffic of the target multicast source, and forward the multicast traffic of the target multicast source to the first remote VTEP device.
With reference to the second aspect, in a first possible implementation manner, the apparatus further includes:
a first determining unit, configured to determine whether a second remote VTEP device exists according to the EVPN ethernet segment ES route received by the receiving unit; the second remote VTEP device and the first remote VTEP device have the same Ethernet segment identifier ESI;
the querying unit is further configured to query whether a multicast forwarding table entry including the target multicast source under the same VXLAN ID synchronized by the second remote VTEP device exists if the second remote VTEP device exists;
the sending unit is further configured to, if a multicast forwarding table entry including the target multicast source exists under the same VXLAN ID synchronized by the second remote VTEP device, forward the multicast traffic of the target multicast source to the second remote VTEP device through a VXLAN tunnel between the receiving unit and the second remote VTEP device when the receiving unit receives the multicast traffic of the target multicast source;
the sending unit is further configured to, if there is no multicast forwarding entry including the target multicast source under the same VXLAN ID synchronized by the second remote VTEP device, deny the multicast traffic of the target multicast source from passing through a VXLAN tunnel between the receiving unit and the second remote VTEP device when the receiving unit receives the multicast traffic of the target multicast source, and forward the multicast traffic of the target multicast source to the second remote VTEP device.
With reference to the first possible implementation manner of the second aspect, in a second possible implementation manner, the first determining unit is specifically configured to determine an ESI existing on the first remote VTEP device according to an EVPN ES route from the first remote VTEP device;
the first determining unit is further specifically configured to determine, for any ESI existing on the first remote VTEP device, whether an EVPN ES route exists where other remote VTEP devices have sent the ESI;
the first determining unit is further specifically configured to determine that another remote VTEP device is a second remote VTEP device if there is an EVPN ES route where the other remote VTEP device has sent the ESI; and if no EVPN ES route which sends the same ESI by other remote VTEP equipment exists for each ESI existing on the first remote VTEP equipment, determining that no second remote VTEP equipment exists.
With reference to the second aspect, in a third possible implementation manner, the apparatus further includes:
a second determining unit, configured to determine, according to the received EVPN ES route, a second remote VTEP device having the same ESI as the first remote VTEP device when the multicast forwarding table entry of the exclusion target multicast source also carries an extended group for indicating that the first remote VTEP device has multi-homing member access;
the querying unit is further configured to query whether a multicast forwarding entry including the target multicast source exists under the same VXLAN ID synchronized by the second remote VTEP device;
the sending unit is further configured to, if a multicast forwarding table entry including the target multicast source exists under the same VXLAN ID synchronized by the second remote VTEP device, forward the multicast traffic of the target multicast source to the second remote VTEP device through a VXLAN tunnel between the receiving unit and the second remote VTEP device when the receiving unit receives the multicast traffic of the target multicast source;
the sending unit is further configured to, if there is no multicast forwarding entry including the target multicast source under the same VXLAN ID synchronized by the second remote VTEP device, deny the multicast traffic of the target multicast source from passing through a VXLAN tunnel between the receiving unit and the second remote VTEP device when the receiving unit receives the multicast traffic of the target multicast source, and forward the multicast traffic of the target multicast source to the second remote VTEP device.
With reference to the third possible implementation manner of the second aspect, in a fourth possible implementation manner, the second determining unit is further configured to determine that the first remote VTEP device does not have access to a multi-homing member when the multicast forwarding entry excluding the target multicast source does not carry the extended community attribute.
According to a third aspect of the present invention there is provided a multicast traffic forwarding apparatus comprising a processor and a machine-readable storage medium storing machine-executable instructions executable by the processor, the processor being caused by the machine-executable instructions to:
when receiving a multicast forwarding table item which is synchronous with a first remote VTEP device and excludes a target multicast source, inquiring whether a multicast forwarding table item which contains the target multicast source and is under the same VXLAN identification ID synchronous with the first remote VTEP device exists; when a plurality of multicast forwarding entries of the same multicast group which need to be synchronized exist in the first remote VTEP device, synchronizing the multicast forwarding entries of the same multicast group to the VTEP device respectively;
if the multicast traffic exists, when the multicast traffic of the target multicast source is received, forwarding the multicast traffic of the target multicast source to the first remote VTEP device through a virtual extensible local area network (VXLAN) tunnel between the first remote VTEP device and the target multicast source;
if the multicast traffic of the target multicast source does not exist, when the multicast traffic of the target multicast source is received, the multicast traffic of the target multicast source is refused to pass through a VXLAN tunnel between the target multicast source and the first remote VTEP device, and the multicast traffic of the target multicast source is forwarded to the first remote VTEP device.
According to a fourth aspect of the invention, there is provided a machine-readable storage medium storing machine-executable instructions that, when invoked and executed by a processor, cause the processor to:
when receiving a multicast forwarding table item which is synchronous with a first remote VTEP device and excludes a target multicast source, inquiring whether a multicast forwarding table item which contains the target multicast source and is under the same VXLAN identification ID synchronous with the first remote VTEP device exists; when a plurality of multicast forwarding entries of the same multicast group which need to be synchronized exist in the first remote VTEP device, synchronizing the multicast forwarding entries of the same multicast group to the VTEP device respectively;
if the multicast traffic exists, when the multicast traffic of the target multicast source is received, forwarding the multicast traffic of the target multicast source to the first remote VTEP device through a virtual extensible local area network (VXLAN) tunnel between the first remote VTEP device and the target multicast source;
if the multicast traffic of the target multicast source does not exist, when the multicast traffic of the target multicast source is received, the multicast traffic of the target multicast source is refused to pass through a VXLAN tunnel between the target multicast source and the first remote VTEP device, and the multicast traffic of the target multicast source is forwarded to the first remote VTEP device.
By applying the technical scheme disclosed by the invention, a plurality of multicast forwarding table entries of the same multicast group are respectively synchronized by merging and synchronizing, when receiving a multicast forwarding table entry which is synchronized by a first remote VTEP device and excludes a target multicast source, a VTEP device inquires whether a multicast forwarding table entry which contains the target multicast source and is synchronized by the first remote VTEP device under the same VXLAN identification ID exists, and if so, when receiving multicast traffic of the target multicast source, the VTEP device forwards the multicast traffic of the target multicast source to the first remote VTEP device through a VXLAN tunnel between the VTEP device and the first remote VTEP device; if the multicast traffic does not exist, when the multicast traffic of the target multicast source is received, the multicast traffic of the target multicast source is refused to pass through the VXLAN tunnel between the target multicast source and the first remote VTEP device, and the multicast traffic of the target multicast source is forwarded to the first remote VTEP device, so that the waste of the bandwidth of a public network can be avoided.
Drawings
Fig. 1 is an architecture diagram of a typical EVPN multi-homing access networking;
fig. 2 is a flowchart illustrating a multicast traffic forwarding method according to an embodiment of the present invention;
fig. 3 is a schematic diagram of an architecture of a specific application scenario according to an embodiment of the present invention;
fig. 4 is a schematic structural diagram of a multicast traffic forwarding apparatus according to an embodiment of the present invention;
fig. 5 is a schematic structural diagram of another multicast traffic forwarding apparatus according to an embodiment of the present invention;
fig. 6 is a schematic structural diagram of another multicast traffic forwarding apparatus according to an embodiment of the present invention;
fig. 7 is a schematic hardware structure diagram of a multicast traffic forwarding apparatus according to an embodiment of the present invention.
Detailed Description
In order to make the technical solutions in the embodiments of the present invention better understood and make the above objects, features and advantages of the embodiments of the present invention more comprehensible, the technical solutions in the embodiments of the present invention are described in further detail below with reference to the accompanying drawings.
Referring to fig. 2, a flowchart of a multicast traffic forwarding method provided in an embodiment of the present invention is shown, where the multicast traffic forwarding method may be applied to a VTEP device in an EVPN multihoming access networking supporting IGMP-Snooping, for example, applied to a VTEP2 in the EVPN multihoming access networking shown in fig. 1, and as shown in fig. 2, the multicast traffic forwarding method may include the following steps:
step 201, when receiving the multicast forwarding table item excluding the target multicast source synchronized by the first remote VTEP device, querying whether there is a multicast forwarding table item including the target multicast source under the same VXLAN ID synchronized by the first remote VTEP device. If yes, go to step 202; otherwise, go to step 203.
In the embodiment of the present invention, the target multicast source does not refer to a fixed multicast source, but may refer to any multicast source that the remote VTEP device excludes from receiving the multicast traffic thereof, and the following description of the embodiment of the present invention is not repeated.
In the embodiment of the invention, in order to avoid the problem that under the condition that the requirement of eliminating the multicast source exists, the multicast flow of the multicast source is still transmitted between VTEP devices without being distinguished, so that the waste of the bandwidth of a public network is further caused, when a plurality of multicast forwarding entries of the same multicast group which need to be synchronized exist, the plurality of multicast forwarding entries can be synchronized without synchronizing the plurality of multicast forwarding entries, but the plurality of multicast forwarding entries are synchronized respectively.
Taking the scenario shown in fig. 1 as an example, after the VTEP1 generates an (×, G)/exception (S, G) forwarding table entry, the (×, G) forwarding table entry is not merged again and is synchronized to the VTEP2, but the (×, G) forwarding table entry and the exception (S, G) forwarding table entry are synchronized to the VTEP2, that is, the VTEP1 forwards the exception (S, G) forwarding table entry.
Accordingly, when the VTEP device receives a multicast forwarding entry (hereinafter, described as an "exception (S, G) forwarding entry") excluding a target multicast source synchronized by a remote VTEP device (referred to as a first remote VTEP device), before the VTEP device issues the forwarding entry, it may first determine whether a multicast forwarding entry including the target multicast source exists locally under the same VXLAN ID synchronized by the first remote VTEP device according to a VXLAN ID (identifier) carried in the exception (S, G) forwarding entry.
The multicast forwarding table entry including the target multicast source may include an include (S, G) forwarding table entry or an (S, G) forwarding table entry.
For convenience of description, the include (S, G) forwarding entry and the (S, G) forwarding entry mentioned below in the case that the VTEP device receives the include (S, G) forwarding entry both refer to the include (S, G) forwarding entry and the (S, G) forwarding entry under the same VXLAN ID as the include (S, G) forwarding entry.
Step 202, when receiving the multicast traffic of the target multicast source, forwarding the multicast traffic of the target multicast source to the first remote VTEP device through the VXLAN tunnel between the first remote VTEP device and the target multicast source.
In the embodiment of the present invention, when the VTEP device determines that there is a multicast forwarding entry containing a target multicast source under the same VXLAN ID synchronized by the first remote VTEP device, the VTEP device does not issue the exception (S, G) forwarding entry, that is, does not issue the exception (S, G) forwarding entry to a forwarding chip for instructing packet forwarding.
When the multicast forwarding table entry containing the target multicast source under the same VXLAN ID synchronized by the first remote VTEP device, which is found locally by the VTEP device, is not issued, the VTEP device also needs to issue the multicast forwarding table entry containing the target multicast source, that is, the multicast forwarding table entry containing the target multicast source is issued to the forwarding chip for guiding message forwarding; wherein, the output interface containing the multicast forwarding table entry of the target multicast source is a VXLAN tunnel between the VTEP device and the first remote VTEP device.
Furthermore, when the VTEP device receives the multicast traffic of the target multicast source, the forwarding chip of the VTEP device may forward the multicast traffic of the target multicast source to the first remote VTEP device through the VXLAN tunnel between the VTEP device and the first remote VTEP device according to the multicast forwarding table entry including the multicast source, and the first remote VTEP device performs forwarding processing according to the local forwarding table entry.
Step 203, when receiving the multicast traffic of the target multicast source, rejecting to forward the multicast traffic of the target multicast source to the first remote VTEP device through the VXLAN tunnel between the first remote VTEP device and the target multicast source.
In the embodiment of the present invention, when the VTEP device queries that the multicast forwarding table entry including the target multicast source does not exist locally under the same VXLAN ID synchronized by the first remote VTEP device, the VTEP device may issue the exception (S, G) forwarding table entry, that is, issue the exception (S, G) forwarding table entry to the forwarding chip for instructing packet forwarding.
Furthermore, when the VTEP device receives the multicast traffic of the target multicast source, the forwarding chip of the VTEP device may reject the multicast traffic of the target multicast source according to the exception (S, G) forwarding table, and forward the multicast traffic to the first remote VTEP device through the VXLAN tunnel between the VTEP device and the first remote VTEP device, so that bandwidth waste caused by the multicast traffic of the target multicast source occupying a public network bandwidth between the VTEP device and the first remote VTEP device under the condition that the first remote VTEP device has a requirement for removing the target multicast source may be avoided.
Further, in the embodiment of the present invention, it is considered that, in an existing EVPN multihoming access networking, when a plurality of VTEP devices accessed by a multihoming member all synchronize a multicast forwarding entry including a target source to a remote VTEP, and when the remote VTEP device receives a multicast traffic of the target source, the VTEP device only forwards the multicast forwarding entry to one of the VTEP devices accessed by the multihoming member (normally forwards the VTEP device that first sends the multicast forwarding entry including the target source).
Still taking the scenario shown in fig. 1 as an example, in the existing implementation scheme, when the host 1 sends a multicast join request, where the multicast join request carries information for excluding the multicast source S, the VTEP1 forwards an entry to the VTEP2 synchronously (×, G); assuming that there is a host 2 with single home access (not shown in the figure) under VTEP3 and the host 2 sends a multicast join message, VTEP3 forwards an entry to VTEP2 in synchronization (x, G), since VTEP2 receives the (x, G) forwarding entry of VTEP1 first and VTEP1 and VTEP3 have multi-home member access, when VTEP2 receives multicast traffic, VTEP2 sends the multicast traffic to VTEP1 but does not send the multicast traffic to VTEP3 (even though VTEP3 has sent the (x, G) forwarding entry), VTEP1 sends a copy to VTEP3 when receiving multicast traffic, and the host 2 may receive multicast traffic.
For the above situation, if the technical solution provided by the embodiment of the present invention is applied, when VTEP1 synchronizes multicast forwarding entries to VTEP2, multicast forwarding entry merging is not performed, that is, VTEP1 synchronizes (, G) forwarding entries and exccle (S, G) forwarding entries respectively, at this time, when VTEP2 receives multicast traffic of multicast source S, if VTEP1 does not send include (S, G) forwarding entries and (S, G) forwarding entries before, VTEP2 does not send multicast traffic of multicast source S to VTEP1, and for VTEP3, although VTEP3 sends (, G) forwarding entries to VTEP2, VTEP2 receives the (, G) forwarding entries of VTEP1 first, VTEP 35 2 forwards multicast traffic according to the default (, G) forwarding entries of VTEP1, and therefore, multicast traffic of multicast source S will not be sent to VTEP3, and multicast traffic of VTEP 352 cannot be received.
In view of the above situation, when the VTEP device receives an exception (S, G) forwarding entry synchronized with the first remote VTEP device, it needs to further determine a multicast traffic forwarding requirement of other remote VTEP devices accessed by the multi-homing member of the first remote VTEP device.
Correspondingly, in an embodiment of the present invention, the multicast traffic forwarding scheme may further include:
determining whether a second remote VTEP device exists according to the received EVPN ES (Ethernet Segment) route; wherein, the second remote VTEP device has the same ESI (Ethernet Segment Identifier) as the first remote VTEP device;
if the second remote VTEP equipment exists, inquiring whether a multicast forwarding table item which is synchronous with the second remote VTEP equipment and contains a target multicast source exists;
if the synchronous multicast forwarding table item containing the target multicast source exists in the second remote VTEP device, when the multicast flow of the target multicast source is received, forwarding the multicast flow of the target multicast source to the second remote VTEP device through a VXLAN tunnel between the second remote VTEP device and the target multicast source;
if the synchronous multicast forwarding table item containing the target multicast source does not exist in the second remote VTEP device, when the multicast flow of the target multicast source is received, the multicast flow of the target multicast source is refused to pass through a VXLAN tunnel between the second remote VTEP device, and the multicast flow of the target multicast source is forwarded to the second remote VTEP device.
In this embodiment, considering that the same ESI (for identifying the ES between the plurality of different VTEP devices and the multihomed member) may exist on a plurality of different VTEP devices accessed by the multihomed member, it may be determined whether the different VTEP devices are connected to the same multihomed member according to whether the same ESI exists on the different VTEP devices.
Accordingly, in this embodiment, the VTEP device may determine the ESI present on each remote VTEP device based on the EVPN ES route received, and further determine whether there are other remote VTEP devices that have the same ESI as the first remote VTEP device.
In one example, the determining whether the second remote VTEP device exists according to the received EVPN ES route may include:
determining the ESI existing on the first remote VTEP device based on the EVPN ES route from the first remote VTEP device;
for any ESI existing on the first remote VTEP device, determining whether an EVPN ES route exists for which other remote VTEP devices sent the ESI;
if yes, determining the other remote VTEP equipment as second remote VTEP equipment;
and if no EVPN ES route which sends the same ESI by other remote VTEP equipment exists for each ESI existing on the first remote VTEP equipment, determining that no second remote VTEP equipment exists.
Specifically, the VTEP device may determine the ESI present on the first remote VTEP device based on the EVPN ES route from the first remote VTEP.
For any ESI on the first remote VTEP device, the VTEP device may determine, based on EVPN ES routes from other remote VTEP devices, whether there are EVPN ES routes for which other remote VTEP devices sent the ESI.
If yes, determining the other remote VTEP equipment as second remote VTEP equipment;
if not, the judgment is repeated for other ESIs on the first remote VTEP device until the judgment is finished for each ESI on the first remote VTEP device.
If there is no EVPN ES route for which other remote VTEP devices send the same ESI for each ESI on the first remote VTEP device, it may be determined that there is no second remote VTEP device, that is, there is no multi-homing member access for the first remote VTEP device.
In this embodiment, when the VTEP apparatus determines that the second remote VTEP apparatus exists, the VTEP apparatus may further query whether a multicast forwarding entry synchronized by the second remote VTEP apparatus exists, where the multicast forwarding entry includes the target multicast source.
If the multicast traffic exists, when the VTEP device receives the multicast traffic of the target multicast source, the VTEP device may forward the multicast traffic of the target multicast source to the second remote VTEP device through the VXLAN tunnel with the second remote VTEP device.
If the synchronous multicast forwarding table item containing the target multicast source of the second remote VTEP equipment is not issued, the VTEP equipment may also issue the multicast forwarding table item containing the target multicast source, that is, issue the multicast forwarding table item containing the target multicast source to a forwarding chip for guiding message forwarding; wherein, the output interface containing the multicast forwarding table entry of the multicast source is a VXLAN tunnel between the VTEP device and the second remote VTEP device.
If not, when the VTEP device receives the multicast traffic of the target multicast source, the VTEP device may refuse to forward the multicast traffic of the target multicast source to the second remote VTEP device through the VXLAN tunnel with the second remote VTEP device.
Further, in the embodiment of the present invention, considering that, when receiving the multicast forwarding entry of the multicast exclusion source synchronized by the remote VTEP device each time, the VTEP device determines whether the remote VTEP device has a low implementation efficiency of the multi-homing member access by querying the EVPN ES route, and may cause system resource consumption, the present multicast forwarding entry of the multicast exclusion source may be extended to enable the VTEP device to carry the multicast forwarding entry for instructing to synchronize the multicast exclusion source, so as to improve the efficiency of determining whether the remote VTEP device has the multi-homing member access by the VTEP device.
Correspondingly, in an embodiment of the present invention, the multicast traffic forwarding scheme may further include:
when the multicast forwarding table entry excluding the target multicast source also carries an extended community attribute, and the extended community attribute indicates that the first remote VTEP equipment has multi-homing member access, determining second remote VTEP equipment with the same ESI as the first remote VTEP equipment according to the received EVPN ES route;
inquiring whether a multicast forwarding table item which is synchronous with the second remote VTEP equipment and contains a target multicast source exists;
if the multicast traffic exists, when the multicast traffic of the target multicast source is received, forwarding the multicast traffic of the target multicast source to the second remote VTEP device through a VXLAN tunnel between the second remote VTEP device and the target multicast source;
if the multicast traffic of the target multicast source does not exist, when the multicast traffic of the target multicast source is received, the multicast traffic of the target multicast source is refused to pass through a VXLAN tunnel between the second remote VTEP device and the second remote VTEP device, and the multicast traffic of the target multicast source is forwarded to the second remote VTEP device.
In this embodiment, for a VTEP device with multi-homing member access, an extended community attribute for indicating that there is multi-homing member access may be carried in a synchronized instance (S, G) forwarding entry.
Correspondingly, when the synchronized exception (S, G) forwarding table entry of the first remote VTEP device carries the extended community attribute for indicating that the first remote VTEP device has the multi-homing member access, the VTEP device may determine that the first remote VTEP device has the multi-homing member access.
At this time, the VTEP device may determine, based on the EVPN ES route received, other remote VTEP devices (i.e., second remote VTEP device) having the same ESI as the first remote VTEP device.
After determining that the second remote VTEP device has the same ESI as the first remote VTEP device, the VTEP device may further query whether there is a multicast forwarding entry that is synchronized by the second remote VTEP device and includes the target multicast source, and determine a query result to perform corresponding forwarding control on the multicast traffic of the target multicast source.
It should be noted that, in the embodiment of the present invention, the extended community attribute may carry an identification field for indicating whether the VTEP device has multi-homing member access, and the VTEP device may be indicated by setting a value of the identification field to a different value, where the VTEP device has multi-homing member access, or does not have multi-homing member access.
For example, when the value of the identification field is a first identification value (e.g. 1), the VTEP device is indicated that there is multi-homing member access; when the value of the identification field is a second identification value (e.g., 0), the VTEP device is indicated that there is no multi-homing member access.
In this case, when the extended community attribute is carried in the exception (S, G) of the first remote VTEP device synchronization received by the VTEP device, the VTEP device may further determine whether the first remote VTEP device has multi-homing member access according to the value of the identification field in the extended community attribute.
When the extended community attribute is not carried in the received exception (S, G) of the first remote VTEP device, the VTEP device may further determine whether the first remote VTEP device has multi-homing member access according to the manner described in the previous embodiment, and specific implementation thereof is not described herein.
Or, the extended community attribute may be only used to indicate that the VTEP device has multi-homing member access, that is, when the extended community attribute is carried by an exception (S, G) forwarding entry, the VTEP device is indicated to have multi-homing member access; and when the exclude (S, G) forwarding table entry does not carry the extended community attribute, indicating that the VTEP equipment does not have multi-homing member access.
In this case, when the extended community attribute is carried in an exception (S, G) forwarding entry of the first remote VTEP device synchronization received by the VTEP device, the VTEP device may determine that the first remote VTEP device has a multi-homing member access; when the synchronous exception (S, G) forwarding entry of the first remote VTEP device received by the VTEP device does not carry the extended community attribute, the VTEP device may determine that the first remote VTEP device does not have access to a multi-homing member.
In order to enable those skilled in the art to better understand the technical solution provided by the embodiment of the present invention, the technical solution provided by the embodiment of the present invention is described below with reference to a specific application scenario.
Please refer to fig. 3, which is a schematic diagram of an architecture of a specific application scenario provided in the embodiment of the present invention, as shown in fig. 3, in the application scenario, host 1 accesses VTEP1 and VTEP3 in a multi-homing manner, and host 2 accesses VTEP1 in a single-homing manner. The VTEP1 and VTEP3 devices are provided with VXLAN access AC functions, the VTEP1 is connected with the host 1 and is an AC1 port, the VTEP3 is connected with the host 1 and is an AC2 port, and the VTEP1 is connected with the host 2 and is an AC3 port. ESI values for both AC1 port and AC2 port were 1 (i.e., ESI 1). Assume that port AC2 is the DF (Designated Forwarder) port of ESI 1. ESI value of port AC3 was 2 (i.e. ESI 2).
VTEP1, VTEP2, and VTEP3 are all connected to an RR (Router Reflector) (e.g., RR1 and RR2 shown in fig. 3), and the routing (including forwarding table entries) synchronization between the VTEP devices is achieved through the RR.
Based on the application scenario shown in fig. 3, the multicast traffic forwarding scheme provided in the embodiment of the present invention has the following implementation flow:
1. the host 1 sends a multicast join message, the multicast join message is hash-sent to VTEP3 after passing through switch LSW, when receiving the multicast join message, VTEP3 locally generates a multicast forwarding table entry (×, G), and the output interface is AC2 port (ESI value is ESI 1).
VTEP3 synchronizes the (, G) forwarding table to remote VTEP devices (including VTEP1 and VTEP 2).
When receiving the (x, G) forwarding table entry synchronized with VTEP3, VTEP1 finds that there is a local AC port (i.e., AC1 port) that is the same as the ESI value (i.e., ESI1) of the outgoing interface (i.e., AC2 port) of the (x, G) forwarding table entry, and VTEP1 issues the (x, G) forwarding table entry, where the outgoing interface is AC1 port.
VTEP2 receives the simultaneous (star, G) forwarding table entry of VTEP3, and since VTEP2 has multicast source S and multicast source S1 locally, VTEP2 may issue an (S, G) forwarding table entry and an (S1, G) forwarding table entry, and the outgoing interfaces of the forwarding table entries are VXLAN tunnels between VTEP3 and VTEP 2.
2. The host 2 sends a multicast join message, wherein the multicast join message carries information excluding a multicast source S, when receiving the multicast join message, the VTEP1 locally generates a multicast forwarding table (× G)/exception (S, G), and an output interface is an AC3 port (ESI value is ESI 2).
VTEP1 synchronizes the (, G) and exccle (S, G) forwarding entries to remote VTEP devices (including VTEP2 and VTEP3), respectively.
When receiving synchronous (, G) and exccle (S, G) forwarding table entries of VTEP1, VTEP3 finds that there is no AC port that is the same as ESI value (i.e., ESI2) of the egress interface (i.e., AC3 port) of the exccle (S, G) forwarding table entry locally, and VTEP1 issues the exccle (S, G) forwarding table entry, where the egress interface is a VXLAN tunnel between VTEP3 and VTEP 1.
In this embodiment, since there is a multi-homing member (i.e. host 1) access on VTEP1, the synchronized exccle (S, G) forwarding table entry of VTEP1 carries information indicating that there is a multi-homing member access on VTEP 1.
3. The VTEP2 receives an (, G) and an exception (S, G) forwarding entry synchronized with the VTEP1, determines whether the exception (S, G) forwarding entry carries the extended community attribute, and finds that the exception (S, G) forwarding entry carries the extended community attribute:
on one hand, the VTEP2 queries whether an include (S, G) forwarding table entry or an (S, G) forwarding table entry under the same VXLAN ID synchronized by VTEP1 exists; if yes, issuing an include (S, G) forwarding table entry or an (S, G) forwarding table entry, wherein an outgoing interface is a VXLAN tunnel between VTEP2 and VTEP 1; and if the forwarding table does not exist, issuing an exception (S, G) forwarding table entry, wherein the outgoing interface is a VXLAN tunnel between VTEP2 and VTEP 1.
It should be noted that, since the VTEP2 locally has the multicast source S and the multicast source S1, when receiving the forwarding entry (x, G) synchronized with the VTEP1, the VTEP2 issues the forwarding entry (S1, G), and the outgoing interface is a VXLAN tunnel between the VTEP2 and the VTEP 1; for the multicast source S, since the VTEP1 also synchronizes the exception (S, G) forwarding table entry, the VTEP2 does not issue the (S, G) forwarding table entry, but issues the exception (S, G) forwarding table entry, and the outgoing interface is a VXLAN tunnel between the VTEP2 and the VTEP 1.
On the other hand, VTEP2 finds that ESI1 exists on VTEP1 according to EVPN ES routing from VTEP1, at this time, VTEP2 may determine other remote VTEP devices where ESI1 exists according to EVPN ES routing from other remote VTEPs, and finds that VTEP3 exists on ESI1, so that VTEP2 may query whether there is any include (S, G) forwarding table or (S, G) forwarding table synchronized with VTEP 3; if yes, issuing an include (S, G) forwarding table entry or an (S, G) forwarding table entry, wherein an outgoing interface is a VXLAN tunnel between VTEP2 and VTEP 3; if not, no special processing is performed.
4. When VTEP2 receives the multicast traffic of the multicast source S, VTEP2 queries the local forwarding table; if the inquired forwarding table entry is an exception (S, G), rejecting to forward the multicast traffic of the multicast source S through the corresponding output interface; and if the inquired forwarding table entry is an include (S, G) forwarding table entry or an (S, G) forwarding table entry, forwarding the multicast traffic of the multicast source S through the corresponding output interface.
In this embodiment, according to the above query result, VTEP2 forwards the multicast traffic of the multicast source S to VTEP3, and rejects forwarding the multicast traffic of the multicast source S to VTEP 1.
As can be seen from the above description, in the technical solution provided in the embodiment of the present invention, by adjusting multiple multicast forwarding entries of the same multicast group from merge synchronization to separate synchronization, when receiving a multicast forwarding entry excluding a target multicast source that is synchronized by a first remote VTEP device, a VTEP device queries whether there is a multicast forwarding entry including the target multicast source under the same VXLAN identifier ID that is synchronized by the first remote VTEP device, and if so, when receiving multicast traffic of the target multicast source, forwards the multicast traffic of the target multicast source to the first remote VTEP device through a VXLAN tunnel between the VTEP device and the first remote VTEP device; if the multicast traffic does not exist, when the multicast traffic of the target multicast source is received, the multicast traffic of the target multicast source is refused to pass through the VXLAN tunnel between the target multicast source and the first remote VTEP device, and the multicast traffic of the target multicast source is forwarded to the first remote VTEP device, so that the waste of the bandwidth of a public network can be avoided.
Referring to fig. 4, a schematic structural diagram of a multicast traffic forwarding apparatus according to an embodiment of the present invention is provided, where the multicast traffic forwarding apparatus may be applied to a VTEP device in the foregoing method embodiment, and as shown in fig. 4, the multicast traffic forwarding apparatus may include:
a receiving unit 410, configured to receive a multicast forwarding table entry;
an inquiring unit 420, configured to, when the receiving unit 410 receives the multicast forwarding entry excluding the target multicast source synchronized by the first remote VTEP device, inquire whether a multicast forwarding entry including the target multicast source under the same VXLAN identifier ID synchronized by the first remote VTEP device exists; when a plurality of multicast forwarding entries of the same multicast group which need to be synchronized exist in the first remote VTEP device, synchronizing the multicast forwarding entries of the same multicast group to the VTEP device respectively;
a sending unit 430, configured to, if there is a multicast forwarding table entry that includes the target multicast source and is under the same VXLAN ID that is synchronized by the first remote VTEP device, forward the multicast traffic of the target multicast source to the first remote VTEP device through a virtual extensible local area network VXLAN tunnel between the receiving unit and the first remote VTEP device when the receiving unit receives the multicast traffic of the target multicast source;
the sending unit 430 is further configured to, if there is no multicast forwarding entry that includes the target multicast source under the same VXLAN ID synchronized by the first remote VTEP device, deny the multicast traffic of the target multicast source from passing through a VXLAN tunnel between the receiving unit and the first remote VTEP device when the receiving unit receives the multicast traffic of the target multicast source, and forward the multicast traffic of the target multicast source to the first remote VTEP device.
Referring to fig. 5, a schematic structural diagram of another multicast traffic forwarding apparatus according to an embodiment of the present invention is shown in fig. 5, where, on the basis of the multicast traffic forwarding apparatus shown in fig. 4, the multicast traffic forwarding apparatus shown in fig. 5 may further include:
a first determining unit 440, configured to determine whether a second remote VTEP device exists according to the EVPN ethernet segment ES route received by the receiving unit 410; the second remote VTEP device and the first remote VTEP device have the same Ethernet segment identifier ESI;
the querying unit 420 is further configured to query whether a multicast forwarding entry including the target multicast source under the same VXLAN ID synchronized by the second remote VTEP device exists if the second remote VTEP device exists;
the sending unit 430 is further configured to, if there is a multicast forwarding entry that includes the target multicast source and is under the same VXLAN ID synchronized by the second remote VTEP device, forward the multicast traffic of the target multicast source to the second remote VTEP device through a VXLAN tunnel between the receiving unit and the second remote VTEP device when the receiving unit receives the multicast traffic of the target multicast source;
the sending unit 430 is further configured to, if there is no multicast forwarding entry that includes the target multicast source under the same VXLAN ID synchronized by the second remote VTEP device, deny the multicast traffic of the target multicast source from passing through a VXLAN tunnel between the receiving unit and the second remote VTEP device when the receiving unit receives the multicast traffic of the target multicast source, and forward the multicast traffic of the target multicast source to the second remote VTEP device.
In an optional embodiment, the first determining unit 440 is specifically configured to determine, according to the EVPN ES route from the first remote VTEP device, an ESI existing on the first remote VTEP device;
the first determining unit 440 is further specifically configured to determine, for any ESI existing on the first remote VTEP device, whether there is an EVPN ES route sent by another remote VTEP device;
the first determining unit 440 is further specifically configured to determine that another remote VTEP device is a second remote VTEP device if there is an EVPN ES route sent by the other remote VTEP device by the ESI; and if no EVPN ES route which sends the same ESI by other remote VTEP equipment exists for each ESI existing on the first remote VTEP equipment, determining that no second remote VTEP equipment exists.
Referring to fig. 6 together, a schematic structural diagram of another multicast traffic forwarding apparatus according to an embodiment of the present invention is shown in fig. 6, where on the basis of the multicast traffic forwarding apparatus shown in fig. 4, the multicast traffic forwarding apparatus shown in fig. 6 may further include:
a second determining unit 450, configured to determine, according to the received EVPN ES route, a second remote VTEP device having the same ESI as the first remote VTEP device when the multicast forwarding entry of the exclusion target multicast source further carries an extended group for indicating that the first remote VTEP device has multi-homing member access;
the querying unit 420 is further configured to query whether there is a multicast forwarding entry containing the target multicast source under the same VXLAN ID synchronized by the second remote VTEP device;
the sending unit 430 is further configured to, if there is a multicast forwarding entry that includes the target multicast source and is under the same VXLAN ID synchronized by the second remote VTEP device, forward the multicast traffic of the target multicast source to the second remote VTEP device through a VXLAN tunnel between the receiving unit and the second remote VTEP device when the receiving unit receives the multicast traffic of the target multicast source;
the sending unit 430 is further configured to, if there is no multicast forwarding entry that includes the target multicast source under the same VXLAN ID synchronized by the second remote VTEP device, deny the multicast traffic of the target multicast source from passing through a VXLAN tunnel between the receiving unit and the second remote VTEP device when the receiving unit receives the multicast traffic of the target multicast source, and forward the multicast traffic of the target multicast source to the second remote VTEP device.
In an optional embodiment, the second determining unit 450 is further configured to determine that the first remote VTEP apparatus does not have access to a multi-homing member when the multicast forwarding entry of the excluded target multicast source does not carry the extended community attribute.
Fig. 7 is a schematic diagram of a hardware structure of a multicast traffic forwarding apparatus according to an embodiment of the present invention. The multicast traffic forwarding apparatus may include a processor 701, a machine-readable storage medium 702 having machine-executable instructions stored thereon. The processor 701 and the machine-readable storage medium 702 may communicate via a system bus 703. Also, the processor 701 may perform the multicast traffic forwarding method described above by reading and executing machine-executable instructions in the machine-readable storage medium 702 corresponding to the multicast traffic forwarding logic.
The machine-readable storage medium 702 referred to herein may be any electronic, magnetic, optical, or other physical storage device that can contain or store information such as executable instructions, data, and the like. For example, the machine-readable storage medium may be: a RAM (random Access Memory), a volatile Memory, a non-volatile Memory, a flash Memory, a storage drive (e.g., a hard drive), a solid state drive, any type of storage disk (e.g., an optical disk, a dvd, etc.), or similar storage medium, or a combination thereof.
Embodiments of the present invention also provide a machine-readable storage medium, such as the machine-readable storage medium 702 in fig. 7, including machine-executable instructions, which are executable by the processor 701 in the multicast traffic forwarding apparatus to implement the multicast traffic forwarding method described above.
The implementation process of the functions and actions of each unit in the above device is specifically described in the implementation process of the corresponding step in the above method, and is not described herein again.
For the device embodiments, since they substantially correspond to the method embodiments, reference may be made to the partial description of the method embodiments for relevant points. The above-described embodiments of the apparatus are merely illustrative, and the units described as separate parts may or may not be physically separate, and parts displayed as units may or may not be physical units, may be located in one place, or may be distributed on a plurality of network units. Some or all of the modules can be selected according to actual needs to achieve the purpose of the scheme of the invention. One of ordinary skill in the art can understand and implement it without inventive effort.
It can be seen from the above embodiments that, by adjusting the multicast forwarding entries of multiple same multicast groups from merge synchronization to separate synchronization, when receiving the multicast forwarding entry excluding the target multicast source synchronized by the first remote VTEP device, the VTEP device queries whether there is a multicast forwarding entry including the target multicast source under the same VXLAN identifier ID synchronized by the first remote VTEP device, and if so, when receiving the multicast traffic of the target multicast source, forwards the multicast traffic of the target multicast source to the first remote VTEP device through a VXLAN tunnel between the VTEP device and the first remote VTEP device; if the multicast traffic does not exist, when the multicast traffic of the target multicast source is received, the multicast traffic of the target multicast source is refused to pass through the VXLAN tunnel between the target multicast source and the first remote VTEP device, and the multicast traffic of the target multicast source is forwarded to the first remote VTEP device, so that the waste of the bandwidth of a public network can be avoided.
Other embodiments of the invention will be apparent to those skilled in the art from consideration of the specification and practice of the invention disclosed herein. This invention is intended to cover any variations, uses, or adaptations of the invention following, in general, the principles of the invention and including such departures from the present disclosure as come within known or customary practice within the art to which the invention pertains. It is intended that the specification and examples be considered as exemplary only, with a true scope and spirit of the invention being indicated by the following claims.
It will be understood that the invention is not limited to the precise arrangements described above and shown in the drawings and that various modifications and changes may be made without departing from the scope thereof. The scope of the invention is limited only by the appended claims.

Claims (10)

1. A multicast flow forwarding method is applied to a virtual extensible local area network tunnel endpoint VTEP device in an Ethernet virtual private network EVPN multi-homing access networking supporting an Internet group management protocol Snooping IGMP-Snooping, and is characterized by comprising the following steps:
when receiving a multicast forwarding table item which is synchronous with a first remote VTEP device and excludes a target multicast source, inquiring whether a multicast forwarding table item which contains the target multicast source and is under the same VXLAN identification ID synchronous with the first remote VTEP device exists; when a plurality of multicast forwarding entries of the same multicast group which need to be synchronized exist in the first remote VTEP device, synchronizing the multicast forwarding entries of the same multicast group to the VTEP device respectively;
if the multicast traffic exists, when the multicast traffic of the target multicast source is received, forwarding the multicast traffic of the target multicast source to the first remote VTEP device through a virtual extensible local area network (VXLAN) tunnel between the first remote VTEP device and the target multicast source;
if the multicast traffic of the target multicast source does not exist, when the multicast traffic of the target multicast source is received, the multicast traffic of the target multicast source is refused to pass through a VXLAN tunnel between the target multicast source and the first remote VTEP device, and the multicast traffic of the target multicast source is forwarded to the first remote VTEP device.
2. The method according to claim 1, wherein when receiving the multicast forwarding entry excluding the target multicast source synchronized by the first remote VTEP device, the method further comprises:
determining whether a second far-end VTEP device exists according to the received EVPN Ethernet segment ES route; the second remote VTEP device and the first remote VTEP device have the same Ethernet segment identifier ESI;
if the second remote VTEP equipment exists, inquiring whether a multicast forwarding table item containing the target multicast source under the same VXLAN ID synchronized by the second remote VTEP equipment exists;
if a multicast forwarding table item containing the target multicast source under the same VXLAN ID synchronized by the second remote VTEP device exists, when receiving the multicast traffic of the target multicast source, forwarding the multicast traffic of the target multicast source to the second remote VTEP device through a VXLAN tunnel between the second remote VTEP device and the target multicast source;
if the multicast forwarding table item containing the target multicast source under the same VXLAN ID synchronized by the second remote VTEP device does not exist, when the multicast flow of the target multicast source is received, the multicast flow of the target multicast source is refused to be forwarded to the second remote VTEP device through a VXLAN tunnel between the second remote VTEP device and the target multicast source.
3. The method of claim 2, wherein determining whether a second remote VTEP device is present based on the received EVPNES route comprises:
determining an ESI existing on the first remote VTEP device based on the EVPN ES route from the first remote VTEP device;
for any ESI existing on the first remote VTEP device, determining whether an EVPN ES route exists for which other remote VTEP devices send the ESI;
if yes, determining the other remote VTEP equipment as second remote VTEP equipment;
and if no EVPN ES route which sends the same ESI by other remote VTEP equipment exists for each ESI existing on the first remote VTEP equipment, determining that no second remote VTEP equipment exists.
4. The method according to claim 1, wherein when receiving the multicast forwarding entry excluding the target multicast source synchronized by the first remote VTEP device, the method further comprises:
when the multicast forwarding table entry excluding the target multicast source also carries an extended group for indicating that the first remote VTEP equipment has multi-homing member access, determining second remote VTEP equipment having the same ESI as the first remote VTEP equipment according to the received EVPN ES route;
inquiring whether a multicast forwarding table item containing the target multicast source under the same VXLAN ID synchronized by the second remote VTEP equipment exists;
if the multicast traffic exists, when the multicast traffic of the target multicast source is received, forwarding the multicast traffic of the target multicast source to the second remote VTEP device through a VXLAN tunnel between the second remote VTEP device and the target multicast source;
if the multicast traffic of the target multicast source does not exist, when the multicast traffic of the target multicast source is received, the multicast traffic of the target multicast source is refused to pass through a VXLAN tunnel between the target multicast source and the second remote VTEP equipment, and the multicast traffic of the target multicast source is forwarded to the second remote VTEP equipment.
5. The method according to claim 4, wherein when receiving the multicast forwarding entry excluding the target multicast source synchronized by the first remote VTEP device, the method further comprises:
and when the multicast forwarding table entry of the exclusion target multicast source does not carry the extended community attribute, determining that the first remote VTEP equipment does not have multi-homing member access.
6. A multicast flow forwarding device is applied to virtual extensible local area network tunnel endpoint VTEP equipment in Ethernet virtual private network EVPN multi-homing access networking supporting Internet group management protocol Snooping IGMP-Snooping, and is characterized in that the device comprises:
a receiving unit, configured to receive a multicast forwarding table entry;
a query unit, configured to query whether there is a multicast forwarding entry that includes the target multicast source under the same VXLAN identifier ID synchronized by the first remote VTEP device when the receiving unit receives the multicast forwarding entry that excludes the target multicast source and is synchronized by the first remote VTEP device; when a plurality of multicast forwarding entries of the same multicast group which need to be synchronized exist in the first remote VTEP device, synchronizing the multicast forwarding entries of the same multicast group to the VTEP device respectively;
a sending unit, configured to forward, if there is a multicast forwarding entry that includes the target multicast source under the same VXLAN ID synchronized by the first remote VTEP device, the multicast traffic of the target multicast source to the first remote VTEP device through a virtual extensible local area network VXLAN tunnel between the receiving unit and the first remote VTEP device when the receiving unit receives the multicast traffic of the target multicast source;
the sending unit is further configured to, if there is no multicast forwarding entry including the target multicast source under the same VXLAN ID synchronized by the first remote VTEP device, deny the multicast traffic of the target multicast source from passing through a VXLAN tunnel between the receiving unit and the first remote VTEP device when the receiving unit receives the multicast traffic of the target multicast source, and forward the multicast traffic of the target multicast source to the first remote VTEP device.
7. The apparatus of claim 6, further comprising:
a first determining unit, configured to determine whether a second remote VTEP device exists according to the EVPN ethernet segment ES route received by the receiving unit; the second remote VTEP device and the first remote VTEP device have the same Ethernet segment identifier ESI;
the querying unit is further configured to query whether a multicast forwarding table entry including the target multicast source under the same VXLAN ID synchronized by the second remote VTEP device exists if the second remote VTEP device exists;
the sending unit is further configured to, if a multicast forwarding table entry including the target multicast source exists under the same VXLAN ID synchronized by the second remote VTEP device, forward the multicast traffic of the target multicast source to the second remote VTEP device through a VXLAN tunnel between the receiving unit and the second remote VTEP device when the receiving unit receives the multicast traffic of the target multicast source;
the sending unit is further configured to, if there is no multicast forwarding entry including the target multicast source under the same VXLAN ID synchronized by the second remote VTEP device, deny the multicast traffic of the target multicast source from passing through a VXLAN tunnel between the receiving unit and the second remote VTEP device when the receiving unit receives the multicast traffic of the target multicast source, and forward the multicast traffic of the target multicast source to the second remote VTEP device.
8. The apparatus of claim 7,
the first determining unit is specifically configured to determine, according to the EVPNES route from the first remote VTEP device, an ESI existing on the first remote VTEP device;
the first determining unit is further specifically configured to determine, for any ESI existing on the first remote VTEP device, whether an EVPN ES route exists where other remote VTEP devices have sent the ESI;
the first determining unit is further specifically configured to determine that another remote VTEP device is a second remote VTEP device if there is an EVPN ES route where the other remote VTEP device has sent the ESI; and if no EVPN ES route which sends the same ESI by other remote VTEP equipment exists for each ESI existing on the first remote VTEP equipment, determining that no second remote VTEP equipment exists.
9. The apparatus of claim 6, further comprising:
a second determining unit, configured to determine, according to the received EVPN ES route, a second remote VTEP device having the same ESI as the first remote VTEP device when the multicast forwarding table entry of the exclusion target multicast source also carries an extended group for indicating that the first remote VTEP device has multi-homing member access;
the querying unit is further configured to query whether a multicast forwarding entry including the target multicast source exists under the same VXLAN ID synchronized by the second remote VTEP device;
the sending unit is further configured to, if a multicast forwarding table entry including the target multicast source exists under the same VXLAN ID synchronized by the second remote VTEP device, forward the multicast traffic of the target multicast source to the second remote VTEP device through a VXLAN tunnel between the receiving unit and the second remote VTEP device when the receiving unit receives the multicast traffic of the target multicast source;
the sending unit is further configured to, if there is no multicast forwarding entry including the target multicast source under the same VXLAN ID synchronized by the second remote VTEP device, deny the multicast traffic of the target multicast source from passing through a VXLAN tunnel between the receiving unit and the second remote VTEP device when the receiving unit receives the multicast traffic of the target multicast source, and forward the multicast traffic of the target multicast source to the second remote VTEP device.
10. The apparatus of claim 9,
the second determining unit is further configured to determine that the first remote VTEP device does not have access to a multihomed member when the multicast forwarding entry excluding the target multicast source does not carry the extended community attribute.
CN201810551810.4A 2018-05-31 2018-05-31 Multicast traffic forwarding method and device Active CN108881024B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810551810.4A CN108881024B (en) 2018-05-31 2018-05-31 Multicast traffic forwarding method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810551810.4A CN108881024B (en) 2018-05-31 2018-05-31 Multicast traffic forwarding method and device

Publications (2)

Publication Number Publication Date
CN108881024A CN108881024A (en) 2018-11-23
CN108881024B true CN108881024B (en) 2021-03-23

Family

ID=64336117

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810551810.4A Active CN108881024B (en) 2018-05-31 2018-05-31 Multicast traffic forwarding method and device

Country Status (1)

Country Link
CN (1) CN108881024B (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109639556B (en) * 2019-01-07 2021-05-28 新华三技术有限公司 Forwarding table entry reporting method and VTEP equipment
CN115883286B (en) * 2022-11-29 2024-04-09 迈普通信技术股份有限公司 IGMP message processing method, device, VTEP device and storage medium

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101599909A (en) * 2009-07-08 2009-12-09 杭州华三通信技术有限公司 The method and apparatus that a kind of flow is transmitted
CN105099922A (en) * 2015-06-18 2015-11-25 杭州华三通信技术有限公司 Cross-VXLAN (Virtual eXtensible Local Area Network) data message forwarding method and device
CN106878288A (en) * 2017-01-20 2017-06-20 新华三技术有限公司 A kind of message forwarding method and device
CN107332772A (en) * 2016-04-29 2017-11-07 华为技术有限公司 Forwarding-table item method for building up and device
CN107733793A (en) * 2017-11-28 2018-02-23 新华三技术有限公司 A kind of forwarding-table item maintaining method and device
CN107846342A (en) * 2016-09-20 2018-03-27 华为技术有限公司 A kind of retransmission method, equipment and the system of VXLAN messages
CN107911495A (en) * 2017-11-16 2018-04-13 新华三技术有限公司 A kind of MAC Address synchronous method and VTEP

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030056226A1 (en) * 2001-09-20 2003-03-20 Lazarus David B. Implementation of virtual telephony endpoints in communications gateways
US8923149B2 (en) * 2012-04-09 2014-12-30 Futurewei Technologies, Inc. L3 gateway for VXLAN

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101599909A (en) * 2009-07-08 2009-12-09 杭州华三通信技术有限公司 The method and apparatus that a kind of flow is transmitted
CN105099922A (en) * 2015-06-18 2015-11-25 杭州华三通信技术有限公司 Cross-VXLAN (Virtual eXtensible Local Area Network) data message forwarding method and device
CN107332772A (en) * 2016-04-29 2017-11-07 华为技术有限公司 Forwarding-table item method for building up and device
CN107846342A (en) * 2016-09-20 2018-03-27 华为技术有限公司 A kind of retransmission method, equipment and the system of VXLAN messages
CN106878288A (en) * 2017-01-20 2017-06-20 新华三技术有限公司 A kind of message forwarding method and device
CN107911495A (en) * 2017-11-16 2018-04-13 新华三技术有限公司 A kind of MAC Address synchronous method and VTEP
CN107733793A (en) * 2017-11-28 2018-02-23 新华三技术有限公司 A kind of forwarding-table item maintaining method and device

Also Published As

Publication number Publication date
CN108881024A (en) 2018-11-23

Similar Documents

Publication Publication Date Title
US10749742B2 (en) Managing virtual port channel switch peers from software-defined network controller
US10673781B2 (en) Dedicated virtual local area network for peer-to-peer traffic transmitted between switches
US10116559B2 (en) Operations, administration and management (OAM) in overlay data center environments
US10652047B2 (en) Connectivity to internet via shared services in enterprise fabric based network with LISP control plane
US9178816B1 (en) Control plane messaging in all-active multi-homed ethernet virtual private networks
CN103118148B (en) A kind of ARP buffering updating method and equipment
CN107094110B (en) DHCP message forwarding method and device
CN108600074B (en) Method and device for forwarding multicast data message
EP2982098A1 (en) Internet protocol address resolution
EP2584742B1 (en) Method and switch for sending packet
EP3598705B1 (en) Routing control
EP4239973A1 (en) Packet sending method, device, and system
WO2022121466A1 (en) Data processing method and device for ethernet virtual private network, and storage medium
CN110535744A (en) Message processing method, device and Leaf equipment
US20230269139A1 (en) Software defined access fabric without subnet restriction to a virtual network
US11606333B1 (en) Synchronizing dynamic host configuration protocol snoop information
CN108881024B (en) Multicast traffic forwarding method and device
EP3086512B1 (en) Implementation method and apparatus for vlan to access vf network and fcf
CN108494691B (en) Multicast forwarding method and device and tunnel endpoint equipment
WO2021017619A1 (en) Dmvpn control method, network device, communication system and storage medium
CN114221895A (en) Data transmission method, device and network equipment
CN113545130A (en) Fast roaming and unifying policy for wireless clients using distributed hashing
JP7314219B2 (en) DATA TRANSMISSION METHOD, APPARATUS AND NETWORK DEVICE
US11902166B2 (en) Policy based routing in extranet networks
WO2023107910A1 (en) Systems and methods for preventing solicited-node multicast address collisions

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