CN108337158B - Unicast message forwarding method and device - Google Patents

Unicast message forwarding method and device Download PDF

Info

Publication number
CN108337158B
CN108337158B CN201810062566.5A CN201810062566A CN108337158B CN 108337158 B CN108337158 B CN 108337158B CN 201810062566 A CN201810062566 A CN 201810062566A CN 108337158 B CN108337158 B CN 108337158B
Authority
CN
China
Prior art keywords
port
esi
route
tunnel
state
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
CN201810062566.5A
Other languages
Chinese (zh)
Other versions
CN108337158A (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 CN201810062566.5A priority Critical patent/CN108337158B/en
Publication of CN108337158A publication Critical patent/CN108337158A/en
Application granted granted Critical
Publication of CN108337158B publication Critical patent/CN108337158B/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/28Routing or path finding of packets in data switching networks using route fault recovery
    • 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
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/54Organization of routing tables
    • 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
    • H04L45/7453Address table lookup; Address filtering using hashing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/82Miscellaneous aspects
    • H04L47/825Involving tunnels, e.g. MPLS

Landscapes

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

Abstract

The application provides a unicast message forwarding method and a unicast message forwarding device. In the application, when the VTEP device detects that the local port configured with ESI is failed, the state of ESI configured with the failed port is still maintained as an UP state, and the AC port associated with the failed port is continuously maintained, so that the VTEP device does not send a route cancellation instruction due to the port failure, and further, the remote device is prevented from refreshing the output port information of each forwarding entry due to the failed port, which avoids the problems such as packet loss and the like caused by refreshing the forwarding entries by the remote device. Meanwhile, in order to prevent packet loss, in the present application, the AC port is switched from an originally associated failed port to an associated tunnel port, so that the unicast packet is forwarded to the opposite device through the tunnel, and the opposite device finally forwards the unicast packet to the destination.

Description

Unicast message forwarding method and device
Technical Field
The present application relates to network communication technologies, and in particular, to a unicast packet forwarding method and apparatus.
Background
An Ethernet Virtual Private Network (EVPN) is a two-layer VPN technology, and uses a Border Gateway Protocol (BGP) to advertise routing information on a control plane, and uses an eXtensible Virtual local area Network (VXLAN) encapsulation to forward a user packet on a data plane.
The EVPN may provide two-layer interconnection for the same subnet of the same tenant with physical sites (sites) scattered at different locations based on an existing service provider or an Internet Protocol (IP) network, and provide three-layer interconnection for different subnets of the same tenant through an EVPN gateway and provide three-layer interconnection with an external network.
Disclosure of Invention
The application provides a unicast message forwarding method and a unicast message forwarding device, which are used for preventing remote equipment from refreshing a forwarding table item caused by port failure.
The technical scheme provided by the application comprises the following steps:
a unicast message forwarding method is applied to an extensible virtual local area network tunnel endpoint (VTEP) device, wherein the VTEP device is used as a home of a multi-home device and is connected with other homes of the multi-home device through a tunnel, and the method comprises the following steps:
receiving a route sent by opposite terminal equipment;
if the Ethernet segment identifier ESI carried by the route is the same as the ESI configured by at least one local port, associating the ESI with a tunnel port between the device and the opposite-end device;
detecting a local port fault configured with the ESI, maintaining the state of the ESI configured with a fault port as a normal operation UP state, determining an access circuit AC port associated with the fault port, and switching the AC port from being associated with the fault port to being associated with the tunnel port according to the tunnel port associated with the ESI;
when a unicast message is received, if an output port used for forwarding the unicast message is determined to be the AC port, forwarding the unicast message according to the tunnel port associated with the AC port.
A unicast message forwarding device is applied to an extensible virtual local area network tunnel endpoint (VTEP) device, wherein the VTEP device serves as a home of a multi-home device and is connected with other homes of the multi-home device through tunnels, and the device comprises:
a routing unit, configured to receive a route sent by an opposite-end device; if the Ethernet segment identifier ESI carried by the route is the same as the ESI configured by at least one local port, associating the ESI with a tunnel port between the device and the opposite-end device;
a fault processing unit, configured to detect a local port fault configured with the ESI, maintain a state of the ESI configured with a faulty port as a normal operation UP state, determine an access circuit AC port associated with the faulty port, and switch the AC port from being associated with the faulty port to being associated with the tunnel port according to the tunnel port associated with the ESI;
and the message unit is used for forwarding the unicast message according to the tunnel port associated with the AC port if the output port for forwarding the unicast message is determined to be the AC port when the unicast message is received.
According to the technical scheme, when the VTEP device detects that the local port configured with the ESI fails, the VTEP device still maintains the ESI configured with the failed port in the UP state and continues to maintain the AC port associated with the failed port, so that the VTEP device does not send a route cancellation command due to the port failure, and further prevents the remote device from refreshing the output port information of each forwarding table entry due to the failed port, thereby avoiding the problems of packet loss and the like caused by the remote device due to the refreshing of the forwarding table entries. Meanwhile, in order to prevent packet loss, in the present application, an AC port associated with a failed port is maintained unchanged, but the AC port is switched from an originally associated failed port to an associated tunnel port, so that encapsulation information corresponding to the AC port is modified from encapsulation information (such as a VLAN) of an AC instance to tunnel encapsulation information, so that a unicast packet is forwarded to an opposite device through a tunnel, and the opposite device finally forwards the unicast packet to a destination.
Drawings
The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the present disclosure and together with the description, serve to explain the principles of the disclosure.
FIG. 1 is a schematic diagram of the networking provided herein;
FIG. 2 is a flow chart of a method provided herein;
FIG. 3 is a schematic diagram of application networking according to an embodiment provided herein;
fig. 4 is a schematic structural diagram of the device provided in the present application.
Detailed Description
There are multi-homing scenarios in EVPN networking. For example, the Ethernet Segment switch (ES) 1 shown in fig. 1 has three affiliations, which are three different devices, namely, a virtual extensible local area network Tunnel End Point (VTEP) 1, a VTEP2, and a VTEP 4. For convenience of description, a device having more than two homes is simply referred to as a multihomed device, such as ES1 shown in fig. 1. In fig. 1, for example, the Port11_1 connected to VTEP1 in ES1, the Port11_2 connected to VTEP2 in ES1, and the Port11_4 connected to VTEP4 in ES1 are two member ports of the same aggregation Port. And the same device to which each home of the multihomed device is connected is referred to as a multihomed terminating device, such as VTEP3 shown in fig. 1.
The method is applied to a multi-homing scene, and the ports connected with the same multi-homing device on each home of the multi-homing device are configured with the same Ethernet Segment Identifier (ESI). Still taking the example of networking shown in fig. 1 as an example, in fig. 1, Port1_11 of ES1 as a multihomed device connected to VTEP1, Port2_11 of ES1 as a multihomed device connected to VTEP2, and Port4_11 of ES1 as a multihomed device connected to VTEP4 are configured with the same ESI (denoted as ESI 101).
When any attribution of the multi-homing device is in normal operation (UP) of a port locally connected with the multi-homing device, the ESI configured by the local port of the UP is set to be in an UP state, and a route is issued to the remote device, wherein the issued route carries the ESI set to be in the UP state. For example, VTEP1 in fig. 1, which is specifically one home of the multihomed device, ES1, sets ESI101 configured by Port1_11 to an UP state when Port1_11UP of ES1, which is a multihomed device, is connected, and issues a route carrying ESI101 to a remote device. As an embodiment, here, the manner of issuing the route is similar to that of issuing the existing route, and is not described again.
And then, the remote equipment learns the route and updates the local forwarding table item according to the ESI carried by the learned route. Taking an example that VTEP1 issues a route carrying ESI101 to a remote device when connecting to a Port1_11UP of ES1, which is a multi-homing device shown in fig. 1, VTEP2, VTEP3, and VTEP4 learn the route issued by VTEP1, and update a local forwarding entry according to the ESI101 carried by the learned route, for example, VTEP3 newly adds a forwarding entry corresponding to ESI101 in the local forwarding entry, such as a forwarding entry to Server2 (an exit Port is a tunnel from VTEP3 to VTEP 1). VTEP2 and VTEP4 issue routes in a similar manner to VTEP1, and finally, there are 3 egress ports in the forwarding table entry from VTEP3 to Server2 locally, which are a tunnel from VTEP3 to VTEP1, a tunnel from VTEP3 to VTEP2, and a tunnel from VTEP3 to VTEP 4.
The following applies to a multihoming scenario, taking the Server (Server)5 shown in fig. 1 sending a unicast message to the Server2 as an example:
the Server5 sends a unicast message. The destination MAC address of the unicast message is the MAC address of the Server 2.
The VTEP3 between the Server5 and the Server2 receives the unicast message from the Server5 and searches a forwarding table entry matched with the unicast message in a local forwarding table; if the unicast message is a two-layer message, the forwarding table entry for searching the unicast message in the local forwarding table may be: searching an MAC table item matched with the destination MAC address of the unicast message in a local MAC table according to the destination MAC address of the unicast message; if the unicast message is a three-layer message, the forwarding table entry for searching the unicast message in the local forwarding table may be: and searching a three-layer forwarding table item matched with the destination IP address of the unicast message in a local three-layer forwarding table according to the destination IP address of the unicast message.
If there are three egress ports of the forwarding table entry found by the VTEP3, which are a tunnel from the VTEP3 to the VTEP1, a tunnel from the VTEP3 to the VTEP2, and a tunnel from the VTEP3 to the VTEP4, the VTEP3 shares the unicast message to one of the egress ports according to a HASH (HASH) algorithm, taking the example that the VTEP3 shares the unicast message HASH to the tunnel from the VTEP3 to the VTEP2, the VTEP2 receives the unicast message. When VTEP2 receives the unicast message, VTEP2 forwards the unicast message to Server2 through ES1, and finally, Server2 receives the unicast message from Server 5.
When any home of the multi-homing device is locally connected with a port fault (Down) of the multi-homing device, the state of ESI configured by the fault port is switched from an UP state to a Down state, and a route canceling instruction is issued to the remote device, wherein the route canceling instruction is used for canceling a route corresponding to the ESI in the Down state and triggering and refreshing a forwarding table entry corresponding to the ESI in the Down state. For example, the VTEP1 in fig. 1 is specifically a home of the multi-homed device, that is, the ES1, and when the Port1_11Down of the multi-homed device, that is, the ES1 is connected, updates the state of the ESI101 configured by the Port1_11 from the UP state to the Down state, and issues a command for revoking a route to the remote device, so as to revoke the route corresponding to the ESI101 in the Down state and trigger to refresh the forwarding entry corresponding to the ESI101 in the Down state.
And then, the remote equipment receives the route canceling command and refreshes the local forwarding table entry according to the received route canceling command. When the VTEP1 shown in fig. 1 is connected to the Port1_11Down of the ES1, which is a multihomed device, the VTEP1 issues a route withdrawal instruction to the remote device, withdraws the route corresponding to the ESI101 in the Down state, and triggers to refresh the forwarding entry corresponding to the ESI101 in the Down state.
However, in the application, if the number of forwarding entries corresponding to the ESI in the Down state is large, when the remote device triggers to refresh the local forwarding entry according to the received route cancellation instruction, the time for refreshing the local forwarding entry is long, and thus the time for packet loss is long.
In order to avoid the above technical problem, the present application provides a flow as shown in fig. 2.
Referring to fig. 2, fig. 2 is a flow chart of a method provided by the present application. The flow is applied to VTEP equipment. The VTEP device is taken as one home of the multi-home device and is connected with other homes of the multi-home device through a tunnel.
As shown in fig. 2, the process may include the following steps:
step 201, the VTEP device receives the route sent by the peer device.
In an example, the peer device may be other affiliations of the multihomed device connected to the VTEP device, or may be other devices besides the respective affiliations of the multihomed device connected to the VTEP device.
In step 202, if the ESI carried by the received route is the same as the ESI configured by the local at least one port, the VTEP device associates the ESI with a tunnel port between the VTEP device and the peer device.
In one example, the port of this step 202 may be a physical port. If the ESI carried by the received route is the same as the ESI configured by at least one local port, it may indicate that the peer device sending the route is connected to the same multi-homing device as the VTEP device.
As an embodiment, in step 202, the method may further include: detecting the state of the ESI configured by the local port, and if the ESI configured by the local port is not in the UP state, switching the state of the ESI configured by the local port into the UP state.
Step 203, when the VTEP device detects that the local port configured with the ESI is failed, the state of the ESI configured with the failed port is maintained as an UP state, an Access Circuit (AC) interface associated with the failed port is determined, and the AC port is switched from being associated with the failed port to being associated with the tunnel port according to the tunnel port associated with the ESI.
As can be seen from this step 203, when the VTEP apparatus detects that the local port configured with ESI fails, the state of ESI configured with the failed port is still maintained as the UP state, which prevents the VTEP apparatus from sending a route withdrawal instruction due to the port failure, and further prevents the remote apparatus from refreshing the forwarding table entry. Meanwhile, in order to prevent packet loss, in the present application, the AC port associated with the failed port is maintained unchanged, but the AC port is switched from the originally associated failed port to the associated tunnel port, so as to modify the encapsulation information corresponding to the AC port from the encapsulation information (such as VLAN) of the AC instance to the tunnel encapsulation information, so that the unicast packet is forwarded to the peer device through the tunnel, specifically, see step 204 below, so that the peer device finally forwards the unicast packet to the destination.
Step 204, when the VTEP device receives the unicast message, if it is determined that the output port for forwarding the unicast message is the AC port, the VTEP device forwards the unicast message according to the tunnel port associated with the AC port.
As described in step 204, when receiving the unicast packet, the VTEP device performs tunnel encapsulation on the unicast packet according to the tunnel port associated with the AC port and forwards the unicast packet through the tunnel if it is determined that the output port for forwarding the unicast packet is the AC port. Therefore, the opposite terminal equipment receives the unicast message packaged by the tunnel, carries out tunnel decapsulation when the opposite terminal equipment receives the unicast message packaged by the tunnel, recovers the original unicast message, and then searches a forwarding table item matched with the unicast message in a local forwarding table; if the unicast message is a two-layer message, the forwarding table entry for searching the unicast message in the local forwarding table may be: searching an MAC table item matched with the destination MAC address of the unicast message in a local MAC table according to the destination MAC address of the unicast message; if the unicast message is a three-layer message, the forwarding table entry for searching the unicast message in the local forwarding table may be: and searching a three-layer forwarding table item matched with the destination IP address of the unicast message in a local three-layer forwarding table according to the destination IP address of the unicast message.
And then, the opposite terminal equipment forwards the unicast message according to the found output port in the forwarding table entry. Finally, the unicast message is forwarded to the destination through the peer device.
Thus, the flow shown in fig. 2 is completed.
The flow shown in fig. 2 is described in detail below by a specific embodiment:
referring to fig. 3, fig. 3 is a networking diagram provided in the embodiment of the present application. The dual homing is a special case of the multi-homing, and the embodiment takes a dual homing scenario as an example for description, and the multi-homing scenario is similar.
In fig. 3, the ES301 is a dual-homing device, and the dual-homing devices are: VTEP401, VTEP 402. Port503 (connection VTEP401) and Port504 (connection VTEP402) on ES301 are member ports of the same aggregation Port.
In fig. 3, Port501 connected to ES301 in VTEP401 and Port502 connected to ES301 in VTEP402 have the same ESI (denoted as ESI 600). VTEP401 and VTEP402 are connected through a tunnel. For convenience of description, the Tunnel between VTEP401 and VTEP402 is denoted as Tunnel3, and VTEP401 has a Tunnel Port1_3 connected to Tunnel3, and VTEP402 has a Tunnel Port2_3 connected to Tunnel 3.
In fig. 3, VTEP403 is a multihomed terminating device. VTEP401 and VTEP402 are connected to VTEP403 via tunnels, respectively. For convenience of description, the Tunnel between VTEP401 and VTEP403 is denoted as Tunnel1, and VTEP401 has Tunnel Port1_1 connected to Tunnel1, and VTEP403 has Tunnel Port3_1 connected to Tunnel 1. The Tunnel between VTEP402 and VTEP403 is denoted as Tunnel2, with Tunnel Port2_2 connected to Tunnel2 on VTEP402 and Tunnel Port3_2 connected to Tunnel2 on VTEP 403.
As shown in fig. 3, when VTEP401 is locally connected to a Port501UP of ES301 as a home of ES301, VTEP401 checks the state of ESI600 configured by Port501, and if the state of ESI600 is found not to be an UP state, sets the state of ESI600 to an UP state, and issues a route carrying ESI 600. In one embodiment, if VTEP401 also has configured locally an AC Port 601 associated with Port501 of the UP, then issuing a route carrying ESI600 is specifically: issuing an Ethernet automatic discovery Route (first-class Route for short) carrying ESI600 and carrying AC port 601 information; here, the AC port 601 information mainly includes: VLAN and VNI information corresponding to AC port 601. In another embodiment, if VTEP401 has not configured an AC Port 601 associated with Port501 of the UP locally, then issuing a route carrying ESI600 is specifically: an Ethernet Segment Route (fourth type Route for short) carrying the ESI600 is issued. Meanwhile, if VTEP401 has not configured the AC Port 601 associated with the UP Port501 locally, VTEP401 needs to further configure the AC Port 601 associated with the UP Port 501.
VTEP402 is another home for ES301 and also a remote device for VTEP401, which receives the route issued by VTEP 401. In this embodiment, the processing manner of receiving the first type of route and the fourth type of route issued by VTEP401 by VTEP402 is improved, specifically: when receiving the first type of route issued by VTEP401, VTEP402 extracts ESI600 carried by the first type of route from the first type of route, finds that the ESI configured by local Port502 is exactly ESI600, and associates the information of ESI600 and AC Port 601 carried by the first type of route with tunnel Port2_3 between the device and VTEP 401. This means that the ESI600 is associated with the tunnel Port2_ 3. When VTEP402 receives the above-mentioned fourth type of route issued by VTEP401, the processing manner is similar to the first type of route, which is briefly described as follows: and extracting ESI600 carried by the fourth type route from the fourth type route, and associating information of the ESI600 carried by the fourth type route with a tunnel Port2_3 between the device and the VTEP401 if the ESI600 configured by the Port502 is found to be the ESI 600. Finally, whether the route received by VTEP402 is a first type of route or a fourth type of route, the ESI600 is implemented in association with a tunnel Port2_ 3. VTEP402 also checks whether the state of ESI600 configured by Port502 is in the UP state, and if not, switches the state of ESI600 to the UP state.
Similarly, when the VTEP402 issues a route carrying the ESI600 at the local Port501UP, the route is issued by the VTEP401 as described above, specifically: VTEP402 checks the state of ESI600 configured by Port502, and if the ESI600 state is found not to be the UP state, then places the ESI600 state into the UP state and issues a route carrying ESI 600. In one embodiment, if VTEP402 also has configured locally an AC Port 602 associated with Port502 of the UP, then issuing a route carrying ESI600 is specifically: issuing a first type of route carrying ESI600 and carrying AC port 602 information; here, the information of the AC port 602 mainly includes: VLAN and VNI information corresponding to the AC port 602. In another embodiment, if the VTEP402 has not configured a Port 602, denoted AC, associated with the Port502 of the UP locally, then issuing a route carrying the ESI600 is specifically: a fourth type of route carrying ESI600 is issued. Meanwhile, if the VTEP402 has not configured the AC Port 602 associated with the UP Port502 locally, the VTEP402 needs to further configure the AC Port 602 associated with the UP Port 502.
VTEP401 is another home of ES301 and also acts as a remote device to VTEP402, which receives the route issued by VTEP 402. In this embodiment, the processing manner of receiving the first type of route and the fourth type of route issued by VTEP402 by VTEP401 is improved, specifically: when receiving the first type of route issued by the VTEP402, the VTEP401 extracts ESI600 carried by the first type of route from the first type of route, finds that the ESI configured by the local Port501 is exactly ESI600, and associates the information of ESI600 and AC Port 602 carried by the first type of route with the tunnel Port1_3 between the device and the VTEP 402. This means that the ESI600 is associated with the tunnel Port1_ 3. When VTEP401 receives the above-mentioned fourth type of route issued by VTEP402, the processing manner is similar to the first type of route, which is briefly described as follows: and extracting ESI600 carried by the fourth type route from the fourth type route, and associating information of the ESI600 carried by the fourth type route with a tunnel Port1_3 between the device and the VTEP401 if the ESI600 configured by the Port501 is exactly ESI 600. Finally, whether the route received by VTEP401 is a first type of route or a fourth type of route, the ESI600 is implemented in association with a tunnel Port1_ 3.
VTEP403, as a remote device to VTEP401, receives the routes issued by VTEP401, VTEP 402. In this embodiment, the route learning manner of the VTEP403 is similar to the existing manner, and is not described again.
In this embodiment, when the Port501 connected to the ES301 on the VTEP401 is normal, the VTEP401 may forward the packet according to the existing packet forwarding method. VTEP402 is similar. Taking the example that the Server705 shown in fig. 3 sends a unicast message to the Server 702:
the Server705 sends unicast messages. The destination MAC address of the unicast message is the MAC address of the Server 702. For convenience of description, the unicast message is denoted as message b 1.
The VTEP403 between the Server705 and the Server702 receives the message b1 from the Server705 first, and searches a forwarding table entry matched with the message b1 in a local forwarding table; if the message b1 is a two-layer message, the forwarding table entry for searching the message b1 in the local forwarding table may be: searching an MAC table item matched with the target MAC address of the message b1 in a local MAC table according to the target MAC address of the message b 1; if the message b1 is a three-layer message, the forwarding table entry for searching the message b1 in the local forwarding table may be: and searching a three-layer forwarding table item, such as an ARP table item, matched with the destination IP address of the message b1 in the local three-layer forwarding table according to the destination IP address of the message b 1.
If the forwarding entry found by the VTEP403 is the entry a1, the learning manner of the entry a1 is similar to the existing entry learning, the egress port of the entry a1 is the Tunnel1 from the VTEP403 to the VTEP401, and the Tunnel2 from the VTEP403 to the VTEP402, respectively, the VTEP403 selects an egress port according to a HASH (HASH) algorithm, taking the example that the VTEP403 selects the Tunnel1 from the VTEP403 to the VTEP401, the VTEP403 encapsulates the packet b1 according to the Tunnel1, and the encapsulated packet b1 is recorded as the packet b 2. VTEP403 forwards packet b2 through Tunnel Port3_1 of local Tunnel 1.
The VTEP401 receives the packet b2 through the Tunnel Port1_1 of the local Tunnel1, decapsulates the packet b2, and recovers the packet b 1. VTEP401 searches for the forwarding entry of message b1 in the local forwarding table, and if VTEP401 finds that the forwarding entry is entry a2, the learning manner of entry a2 is similar to the conventional entry learning, and the output port of entry a2 is the AC port 601.
VTEP401 determines that AC Port 601 is associated with local Port501, and encapsulates packet b1 according to encapsulation information corresponding to AC Port 601, such as a VLAN, and forwards the packet through local Port501 associated with AC Port 601. The ES301 receives the message b1 forwarded by the VTEP401, and finally, the ES301 forwards the message b1 from the Server705 to the Server 702. The Server705 is implemented to unicast access to the Server 702.
When Port501Down of ES301 is connected to VTEP401, the principle of Port502Down of ES301 connected to VTEP402 is similar, and as described in the flow shown in fig. 2, the processing manner of VTEP401 is improved in this embodiment:
in this embodiment, even if VTEP401 finds local Port501Down, VTEP401 maintains the status of ESI600 configured by Port501 as UP, and VTEP401 does not delete the AC Port 601 associated with Port 501.
Because VTEP401 does not delete the AC Port 601 associated with Port501, on the premise of Port501Down, if VTEP401 receives a packet and finds that the output Port of the forwarding table for forwarding the packet is the AC Port 601, the packet will be forwarded through the Port501 associated with AC Port 601, and in fact, Port501Down cannot forward the packet. Based on this, in order to prevent the packet from being forwarded normally and avoid packet loss, in this embodiment, the AC Port 601 is modified from the associated Port501 to the tunnel Port1_3 associated with the associated ESI 600. Still take the example that the Server705 shown in fig. 3 sends a unicast message to the Server702 as follows:
the Server705 sends unicast messages. The destination MAC address of the unicast message is the MAC address of the Server 702. For convenience of description, the unicast message is denoted as message b 1.
The VTEP403 between the Server705 and the Server702 receives the message b1 from the Server705 first, and searches a forwarding table entry matched with the message b1 in a local forwarding table; if the message b1 is a two-layer message, the forwarding table entry for searching the message b1 in the local forwarding table may be: searching an MAC table item matched with the target MAC address of the message b1 in a local MAC table according to the target MAC address of the message b 1; if the message b1 is a three-layer message, the forwarding table entry for searching the message b1 in the local forwarding table may be: and searching a three-layer forwarding table item matched with the destination IP address of the message b1 in the local three-layer forwarding table according to the destination IP address of the message b 1.
If the forwarding entry found by the VTEP403 is the entry a1, the learning manner of the entry a1 is similar to the existing entry learning, the egress ports of the entry a1 are respectively the Tunnel1 from the VTEP403 to the VTEP401, and the Tunnel2 from the VTEP403 to the VTEP402, the VTEP403 selects one egress port according to a HASH (HASH) algorithm, taking the example that the VTEP403 selects the Tunnel1 from the VTEP403 to the VTEP401, the VTEP403 encapsulates the packet b1 according to the Tunnel1, and the encapsulated packet b1 is recorded as the packet b 2. VTEP403 forwards packet b2 through Tunnel Port3_1 of local Tunnel 1.
The VTEP401 receives the packet b2 through the Tunnel Port1_1 of the local Tunnel1, decapsulates the packet b2, and recovers the packet b 1. VTEP401 searches for the forwarding entry of message b1 in the local forwarding table, and if VTEP401 finds that the forwarding entry is entry a2, the learning manner of entry a2 is similar to the conventional entry learning, and the output port of entry a2 is the AC port 601.
VTEP401 determines that AC Port 601 is associated with Tunnel Port1_3 of local Tunnel3, and then Tunnel-encapsulates packet b1 according to the encapsulation information of Tunnel 3. The encapsulated message b1 is recorded as message b 3. VTEP401 forwards packet b3 through the local tunnel Port1_3 associated with AC Port 601.
The VTEP402 receives the packet b3 through the Tunnel Port2_3 of the local Tunnel3, decapsulates the packet b3, and recovers the packet b 1. VTEP402 searches for the forwarding entry of message b1 in the local forwarding table, and if VTEP402 finds that the forwarding entry is entry a3, the learning manner of entry a3 is similar to the conventional entry learning, and the output port of entry a3 is AC port 602.
The VTEP402 determines that the AC Port 602 is associated with the local Port502, and encapsulates the packet b1 according to the encapsulation information corresponding to the AC Port 602, such as the VLAN, and forwards the packet through the local Port502 associated with the AC Port 602. The ES301 receives the message b1 forwarded by the VTEP402, and finally, the ES301 forwards the message b1 from the Server705 to the Server 702. The Server705 is implemented to unicast access to the Server 702.
Thus, the description of the embodiments is completed.
As can be seen from the above description of the embodiment, in this embodiment 1, when VTEP401 detects that a local Port501 fails, the state of ESI600 configured by Port501 is still maintained as an UP state, and VTEP401 does not delete an AC Port 601 associated with Port501, but modifies the associated logic of AC Port 601, that is, modifies from the associated Port501 to a tunnel Port1_3 associated with associated ESI600 (it may also be considered that encapsulation information of AC Port 601 is modified), since the state of ESI600 configured by Port501 is still maintained as an UP state and VTEP401 does not delete the AC Port 601 associated with Port501, all remote devices of VTEP401 do not need to refresh output Port information of each forwarding entry because of Port501Down, which prevents problems such as packet loss caused by the remote devices due to refreshing the forwarding entries.
It should be noted that, in an embodiment, if a failed port recovers from a failure, the AC port is switched from being associated with the tunnel port to being associated with the port recovered from the failure. Still taking fig. 3 as an example, when VTEP401 detects that local Port501 recovers from a failure, the associated logic of AC Port 601 associated with Port501 is recovered, that is, the Port1_3 associated with association ESI600 is modified into associated Port501, so as to implement VTEP401 to subsequently forward packets directly at the local AC Port.
The methods provided herein are described above. The following describes the apparatus provided in the present application:
referring to fig. 4, fig. 4 is a diagram illustrating the structure of the apparatus according to the present invention. The device is applied to VTEP equipment, and the VTEP equipment is used as one attribution of the multi-attribution equipment and is connected with other attributions of the multi-attribution equipment through a tunnel. As shown in fig. 4, the apparatus includes:
a routing unit, configured to receive a route sent by an opposite-end device; if the Ethernet segment identifier ESI carried by the route is the same as the ESI configured by at least one local port, associating the ESI with a tunnel port between the device and the opposite-end device;
a fault processing unit, configured to detect a local port fault configured with the ESI, maintain a state of the ESI configured with a faulty port as a normal operation UP state, determine an access circuit AC port associated with the faulty port, and switch the AC port from being associated with the faulty port to being associated with the tunnel port according to the tunnel port associated with the ESI;
and the message unit is used for forwarding the unicast message according to the tunnel port associated with the AC port if the output port for forwarding the unicast message is determined to be the AC port when the unicast message is received.
As an embodiment, the routing unit further detects a state of the ESI configured for a local port, and if the ESI configured for a local port is not in an UP state, switches the state of the ESI configured for a local port to an UP state.
As an embodiment, when a port UP of the ESI is configured locally, the routing unit further checks a state of the ESI configured by the port UP, and if the port UP is not in the UP state, sets the state of the ESI to be in the UP state, and issues a route carrying the ESI.
As an embodiment, the issuing, by the routing unit, a route carrying the ESI includes: checking whether an AC port associated with the port of the UP is configured locally, if so, issuing an Ethernet automatic discovery Route Ethernet carrying the ESI and carrying AC port information associated with the port of the UP; if not, an Ethernet Segment Route carrying the ESI is issued;
the step of associating ESI with a tunnel portal between the local device and the opposite device by the routing unit includes: if the received route is an Ethernet automatic discovery route, correlating ESI and AC port information carried by the Ethernet automatic discovery route with a tunnel port between the device and the opposite device; and if the received route is the Ethernet segment route, associating the ESI carried by the Ethernet segment route with a tunnel port between the device and the opposite device.
As an embodiment, the failure processing unit notifies the routing unit when detecting that the failed port recovers from a failure;
and the routing unit switches the AC port from being associated with the tunnel port to being associated with the port recovered from the fault after learning that the fault port is recovered from the fault.
Thus, the description of the structure of the device shown in fig. 4 is completed.
The above description is only exemplary of the present application and should not be taken as limiting the present application, as any modification, equivalent replacement, or improvement made within the spirit and principle of the present application should be included in the scope of protection of the present application.

Claims (10)

1. A unicast message forwarding method is applied to an extensible virtual local area network tunnel endpoint (VTEP) device, wherein the VTEP device is used as a home of a multi-home device and is connected with other homes of the multi-home device through a tunnel, and the method comprises the following steps:
receiving a route sent by opposite terminal equipment;
if the Ethernet segment identifier ESI carried by the route is the same as the ESI configured by at least one local port, associating the ESI with a tunnel port between the device and the opposite-end device;
detecting a local port fault configured with the ESI, maintaining the state of the ESI configured with a fault port as a normal operation UP state, determining an access circuit AC port associated with the fault port, and switching the AC port from being associated with the fault port to being associated with the tunnel port according to the tunnel port associated with the ESI;
when a unicast message is received, if an output port used for forwarding the unicast message is determined to be the AC port, forwarding the unicast message according to the tunnel port associated with the AC port.
2. The method as recited in claim 1, wherein said associating the ESI with a tunnel port between the device and the peer device further comprises:
detecting the state of the ESI configured by the local port, and if the ESI configured by the local port is not in the UP state, switching the state of the ESI configured by the local port into the UP state.
3. The method of claim 1, further comprising:
when a port UP of the ESI is configured locally, checking the state of the ESI configured by the port of the UP, if the port is not in the UP state, setting the state of the ESI to be in the UP state, and issuing a route carrying the ESI.
4. A method as described in claim 3 wherein said publishing the route carrying the ESI comprises: checking whether an AC port associated with the port of the UP is configured locally, if so, issuing an Ethernet automatic discovery Route Ethernet carrying the ESI and carrying AC port information associated with the port of the UP; if not, an Ethernet Segment Route carrying the ESI is issued;
the associating the ESI with the tunnel portal between the device and the peer device includes: if the received route is an Ethernet automatic discovery route, correlating ESI and AC port information carried by the Ethernet automatic discovery route with a tunnel port between the device and the opposite device; and if the received route is the Ethernet segment route, associating the ESI carried by the Ethernet segment route with a tunnel port between the device and the opposite device.
5. The method of claim 1, further comprising:
and if the fault port recovers from the fault, switching the AC port from being associated with the tunnel port to being associated with the port recovering from the fault.
6. A unicast message forwarding device is applied to an extensible virtual local area network tunnel endpoint (VTEP) device, wherein the VTEP device serves as a home of a multi-home device and is connected with other homes of the multi-home device through tunnels, and the device comprises:
a routing unit, configured to receive a route sent by an opposite-end device; if the Ethernet segment identifier ESI carried by the route is the same as the ESI configured by at least one local port, associating the ESI with a tunnel port between the device and the opposite-end device;
a fault processing unit, configured to detect a local port fault configured with the ESI, maintain a state of the ESI configured with a faulty port as a normal operation UP state, determine an access circuit AC port associated with the faulty port, and switch the AC port from being associated with the faulty port to being associated with the tunnel port according to the tunnel port associated with the ESI;
and the message unit is used for forwarding the unicast message according to the tunnel port associated with the AC port if the output port for forwarding the unicast message is determined to be the AC port when the unicast message is received.
7. The apparatus as described in claim 6 wherein said routing unit further detects a state of said ESI for a local port configuration and if not in an UP state, switches said state of said ESI for a local port configuration to an UP state.
8. The apparatus as described in claim 6 wherein said routing unit further checks the state of said ESI for a port configuration of said UP when said ESI is configured locally at port UP, and if not UP, sets the state of said ESI to UP state and publishes a route carrying said ESI.
9. The apparatus as described in claim 8, wherein the routing unit to issue a route carrying the ESI comprises: checking whether an AC port associated with the port of the UP is configured locally, if so, issuing an Ethernet automatic discovery Route Ethernet carrying the ESI and carrying AC port information associated with the port of the UP; if not, an Ethernet Segment Route carrying the ESI is issued;
the step of associating ESI with a tunnel portal between the local device and the opposite device by the routing unit includes: if the received route is an Ethernet automatic discovery route, correlating ESI and AC port information carried by the Ethernet automatic discovery route with a tunnel port between the device and the opposite device; and if the received route is the Ethernet segment route, associating the ESI carried by the Ethernet segment route with a tunnel port between the device and the opposite device.
10. The apparatus according to claim 6, wherein the failure processing unit notifies the routing unit when detecting that the failed port recovers from a failure;
and the routing unit switches the AC port from being associated with the tunnel port to being associated with the port recovered from the fault after learning that the fault port is recovered from the fault.
CN201810062566.5A 2018-01-23 2018-01-23 Unicast message forwarding method and device Active CN108337158B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810062566.5A CN108337158B (en) 2018-01-23 2018-01-23 Unicast message forwarding method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810062566.5A CN108337158B (en) 2018-01-23 2018-01-23 Unicast message forwarding method and device

Publications (2)

Publication Number Publication Date
CN108337158A CN108337158A (en) 2018-07-27
CN108337158B true CN108337158B (en) 2020-12-04

Family

ID=62925669

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810062566.5A Active CN108337158B (en) 2018-01-23 2018-01-23 Unicast message forwarding method and device

Country Status (1)

Country Link
CN (1) CN108337158B (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109347717B (en) * 2018-09-26 2021-06-08 新华三技术有限公司 VXLAN tunnel switching method and device
CN109067635B (en) * 2018-09-29 2021-04-02 新华三技术有限公司 Information processing method and device
CN109450767B (en) * 2018-10-26 2020-06-12 新华三技术有限公司 Message processing method and device
CN113098751B (en) * 2021-03-23 2022-07-29 新华三软件有限公司 Path switching method and device
CN113765823A (en) * 2021-09-29 2021-12-07 新华三信息安全技术有限公司 Message forwarding method and device

Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101018183A (en) * 2007-03-12 2007-08-15 杭州华为三康技术有限公司 A topology notification method, system and device based on L2VPN
CN101060497A (en) * 2007-06-11 2007-10-24 杭州华三通信技术有限公司 A traffic engineering tunnel creating method and device
CN101252498A (en) * 2008-04-03 2008-08-27 杭州华三通信技术有限公司 Access point, access controller and communication method thereof
CN101599841A (en) * 2008-06-03 2009-12-09 华为技术有限公司 Realize method, router and the system of multicast
CN102006218A (en) * 2009-09-03 2011-04-06 中兴通讯股份有限公司 Tunnel protection method and device
WO2012103725A1 (en) * 2011-06-29 2012-08-09 华为技术有限公司 Method and apparatus for maintaining connectivity of transmission lines
CN102724128A (en) * 2012-06-28 2012-10-10 杭州华三通信技术有限公司 Message forwarding method and equipment for multi-protocol label switching (MPLS) layer 3 virtual private network (L3VPN)-based for dual-homing networking
CN104270298A (en) * 2014-09-30 2015-01-07 杭州华三通信技术有限公司 Method and device for forwarding message in VXLAN
EP2958302A1 (en) * 2014-06-17 2015-12-23 Sercel Communication method in a communication segment of a network
WO2016035306A1 (en) * 2014-09-01 2016-03-10 日本電気株式会社 Control system, communication system, communication method, and recording medium
CN105577417A (en) * 2014-11-06 2016-05-11 杭州华三通信技术有限公司 VXLAN (virtual extensible local area network)-based massage forwarding method and device
CN106130819A (en) * 2016-07-04 2016-11-16 锐捷网络股份有限公司 The detection method of VTEP exception and device
CN106878183A (en) * 2017-01-22 2017-06-20 新华三技术有限公司 Flow forwarding method and device

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9565105B2 (en) * 2013-09-04 2017-02-07 Cisco Technology, Inc. Implementation of virtual extensible local area network (VXLAN) in top-of-rack switches in a network environment

Patent Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101018183A (en) * 2007-03-12 2007-08-15 杭州华为三康技术有限公司 A topology notification method, system and device based on L2VPN
CN101060497A (en) * 2007-06-11 2007-10-24 杭州华三通信技术有限公司 A traffic engineering tunnel creating method and device
CN101252498A (en) * 2008-04-03 2008-08-27 杭州华三通信技术有限公司 Access point, access controller and communication method thereof
CN101599841A (en) * 2008-06-03 2009-12-09 华为技术有限公司 Realize method, router and the system of multicast
CN102006218A (en) * 2009-09-03 2011-04-06 中兴通讯股份有限公司 Tunnel protection method and device
WO2012103725A1 (en) * 2011-06-29 2012-08-09 华为技术有限公司 Method and apparatus for maintaining connectivity of transmission lines
CN102724128A (en) * 2012-06-28 2012-10-10 杭州华三通信技术有限公司 Message forwarding method and equipment for multi-protocol label switching (MPLS) layer 3 virtual private network (L3VPN)-based for dual-homing networking
EP2958302A1 (en) * 2014-06-17 2015-12-23 Sercel Communication method in a communication segment of a network
WO2016035306A1 (en) * 2014-09-01 2016-03-10 日本電気株式会社 Control system, communication system, communication method, and recording medium
CN104270298A (en) * 2014-09-30 2015-01-07 杭州华三通信技术有限公司 Method and device for forwarding message in VXLAN
CN105577417A (en) * 2014-11-06 2016-05-11 杭州华三通信技术有限公司 VXLAN (virtual extensible local area network)-based massage forwarding method and device
CN106130819A (en) * 2016-07-04 2016-11-16 锐捷网络股份有限公司 The detection method of VTEP exception and device
CN106878183A (en) * 2017-01-22 2017-06-20 新华三技术有限公司 Flow forwarding method and device

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于DS-Lite的IPv6过渡技术的设计与实现;崔胜鹏;《中国优秀硕士学位论文全文数据库 信息科技辑》;20150315;全文 *

Also Published As

Publication number Publication date
CN108337158A (en) 2018-07-27

Similar Documents

Publication Publication Date Title
CN108337158B (en) Unicast message forwarding method and device
CN109873760B (en) Method and device for processing route, and method and device for data transmission
US10333836B2 (en) Convergence for EVPN multi-homed networks
US10348672B2 (en) Using a virtual internet protocol address to represent dually connected hosts in an internet protocol overlay network
US9992154B2 (en) Layer 3 convergence for EVPN link failure
CN107819677B (en) Message forwarding method and device
WO2018054156A1 (en) Vxlan message forwarding method, device and system
CN107547402B (en) Forwarding table generation method and device
CN107612808B (en) Tunnel establishment method and device
US11349749B2 (en) Node protection for bum traffic for multi-homed node failure
US10110465B2 (en) Distributed HSRP gateway in VxLAN flood and learn environment with faster convergence
US20120127854A1 (en) Method of shrinking a data loss window in a packet network device
CN108718269B (en) Message processing method and device
CN109474507B (en) Message forwarding method and device
CN107547340B (en) Message forwarding method and device
CN111064659B (en) Node protection of BUM traffic for multi-homed node failures
CN112671642A (en) Message forwarding method and device
US10757066B2 (en) Active-active access to transparent interconnection of lots of links (TRILL) edges
US10530873B1 (en) Techniques for optimizing EVPN-IRB for IPv6-enabled data centers with top-of-rack deployments
CN113794615B (en) Message forwarding method and device
CN113726632B (en) Message forwarding method and device
CN107547347B (en) VNI-based path adjustment method and device
CN111800327B (en) Traffic sharing method and equipment of VXLAN (virtual extensible local area network)
CN107547691B (en) Address resolution protocol message proxy method and device
WO2022017225A1 (en) Message sending method, device and system

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant