CN109639556B - Forwarding table entry reporting method and VTEP equipment - Google Patents

Forwarding table entry reporting method and VTEP equipment Download PDF

Info

Publication number
CN109639556B
CN109639556B CN201910011567.1A CN201910011567A CN109639556B CN 109639556 B CN109639556 B CN 109639556B CN 201910011567 A CN201910011567 A CN 201910011567A CN 109639556 B CN109639556 B CN 109639556B
Authority
CN
China
Prior art keywords
vsi
reporting
state
entry
protocol software
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
CN201910011567.1A
Other languages
Chinese (zh)
Other versions
CN109639556A (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 CN201910011567.1A priority Critical patent/CN109639556B/en
Publication of CN109639556A publication Critical patent/CN109639556A/en
Application granted granted Critical
Publication of CN109639556B publication Critical patent/CN109639556B/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
    • 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
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/04Network management architectures or arrangements
    • H04L41/044Network management architectures or arrangements comprising hierarchical management structures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/20Network management software packages
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/06Generation of reports
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0805Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
    • H04L43/0811Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking connectivity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/18Protocol analysers

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Environmental & Geological Engineering (AREA)
  • Computer Security & Cryptography (AREA)
  • Communication Control (AREA)

Abstract

The application provides a method for reporting a forwarding table entry and forwarding equipment, wherein the forwarding equipment comprises a protocol software layer and a table entry management layer, and comprises the following steps: the protocol software layer determines the report state of each VSI table item on the equipment; the table entry reporting state includes: reporting an enabling state and reporting a disabling state; the protocol software layer sends the report state of each VSI list item to the list item management layer in batch; and the table item management layer updates the locally stored table item reporting state of each VSI based on the table item reporting state of each VSI, and periodically reports the forwarding table item in the VSI updated to the reporting enabling state to the protocol software layer. By using the method provided by the application, the table entry management layer can report the forwarding table entry to the protocol software layer.

Description

Forwarding table entry reporting method and VTEP equipment
Technical Field
The present application relates to the field of computer communications, and in particular, to a method for reporting a forwarding table entry and a VTEP device.
Background
An EVPN (Ethernet Virtual Private Network) is a two-layer VPN (Virtual Private Network) technology, in which a control plane uses a BGP (Border Gateway Protocol) Protocol to announce EVPN routing information, and a data plane uses a VXLAN (Virtual extended LAN) encapsulation mode to forward a packet. EVPN networking introduces the following concept:
VTEP (VXLAN Tunnel End Point ): edge device of VXLAN. The VXLAN processing is performed on the VTEP, for example, two-layer forwarding, packet encapsulation/decapsulation, and the like are performed on the data frame based on VXLAN. The EVPN networking includes a plurality of VTEPs.
VSI (Virtual Switch Instance): a virtual switching instance on the VTEP provides a two-layer switching service for VXLAN. The VSI can be regarded as a virtual switch on the VTEP that performs two-layer forwarding based on VXLAN, and the VSI and VXLAN correspond one to one. At least one VSI is included on each VTEP. A plurality of forwarding entries are stored in the VSI. In the current VTEP equipment, forwarding table entries are independently managed according to the VSI to which the forwarding table entries belong.
In the existing layered structure of the VTEP device, the software layer of the VTEP device has a protocol software layer and an entry management layer. The table item management layer stores forwarding table items learned by the VTEP and can manage the learned forwarding table items, and the protocol software layer is used for synchronizing the forwarding table items on the VTEP to the VTEP equipment at the opposite end through a BGP protocol so that the VTEP equipment at the opposite end can learn the forwarding information on the VTEP. Therefore, in the process, it is very important how the entry management layer reports the forwarding entries that the protocol software layer needs to synchronize to the protocol software layer.
Disclosure of Invention
In view of this, the present application provides a forwarding table entry reporting method and a VTEP device, so as to implement that a table entry management layer reports a forwarding table entry to a protocol software layer.
Specifically, the method is realized through the following technical scheme:
according to a first aspect of the present application, a method for reporting a forwarding table entry is provided, where the method is applied to a VTEP device, and the VTEP device includes a protocol software layer and a table entry management layer, and the method includes:
the protocol software layer determines the report state of each VSI table item on the equipment; the table entry reporting state includes: reporting an enabling state and reporting a disabling state;
the protocol software layer sends the report state of each VSI list item to the list item management layer in batch;
and the table item management layer updates the locally stored table item reporting state of each VSI based on the table item reporting state of each VSI, and periodically reports the forwarding table item in the VSI updated to the reporting enabling state to the protocol software layer.
Optionally, the determining, by the protocol software layer, the entry reporting state of each VSI on the device includes:
when the equipment is initialized, the protocol software layer determines that the report state of each VSI table item on the equipment is a report disabling state;
after the initialization of the present apparatus is completed,
if the protocol software layer detects that the BGP session is established between the equipment and the opposite-end VTEP equipment, determining that the report state of the items of the shared VSI on the equipment and the opposite-end VTEP equipment is a report enabling state and determining that the report states of the items of other VSIs except the shared VSI are unchanged;
if the protocol software layer detects that the BGP session between the equipment and the opposite-end VTEP equipment is disconnected, determining that the list item reporting state of the shared VSI on the equipment and the opposite-end VTEP equipment is a reporting disabling state, and determining that the list item reporting states of other VSIs except the shared VSI are unchanged.
Optionally, after the protocol software layer determines the entry reporting state of each VSI on the device, the method further includes:
the protocol software layer generates a bitmap based on the table entry reporting state of each VSI; each bit in the bitmap corresponds to one VSI in each VSI, and the value of each bit represents the table entry reporting state of the VSI corresponding to the bit;
the protocol software layer issues the table entry reporting state of each VSI to the table entry management layer, and the protocol software layer comprises the following steps:
and the protocol software layer calls an interface function of the table item management layer and issues the bit map to the table item management layer through the interface function.
Optionally, the table entry management layer stores AVL trees corresponding to the VSIs one to one; all forwarding table entries in the VSI corresponding to the AVL tree are stored in the AVL tree;
the entry management layer updates the entry reporting state of each locally stored VSI based on the entry reporting state of each VSI, and periodically reports the forwarding entry in the VSI updated to the reporting enable state to the protocol software layer, including:
aiming at each VSI, the table item management layer adds a report mark for the VSI when the table item report state of the VSI is a report enabling state; when the entry reporting state of the VSI is a reporting disabled state, if the VSI is provided with a reporting mark, deleting the reporting mark, and if the VSI is not provided with the reporting mark, not adding the reporting mark to the VSI;
the table item management layer periodically traverses each VSI, determines a target VSI with a reporting mark, searches an AVL tree corresponding to the target VSI, and reports all forwarding table items stored in the AVL tree to the protocol software layer.
Optionally, each VSI is configured with a report flag, and a value of the report flag represents a table entry report state of the VSI;
the table entry management layer stores AVL trees corresponding to all VSIs one to one; all forwarding table entries in the VSI corresponding to the AVL tree are stored in the AVL tree;
the entry management layer updates the entry reporting state of each locally stored VSI based on the entry reporting state of each VSI, and periodically reports the forwarding entry in the VSI updated to the reporting enable state to the protocol software layer, including:
the entry management layer sets the value of a reporting mark of each VSI to be a first preset value when the entry reporting state of the VSI is a reporting enabling state; when the entry reporting state of the VSI is a reporting disabled state, setting the value of the reporting mark of the VSI as a second preset value;
the entry management layer periodically traverses each VSI, determines a target VSI with a reporting mark value of a first preset value, searches an AVL tree corresponding to the target VSI, and reports all forwarding entries stored in the AVL tree to the protocol software layer.
According to a second aspect of the present application, there is provided a VTEP device comprising a protocol software layer and an entry management layer;
the protocol software layer is used for determining the report state of each VSI table item on the equipment; the table entry reporting state includes: reporting an enabling state and reporting a disabling state;
the protocol software layer is used for issuing the report state of each VSI list item to the list item management layer in batch;
and the table entry management layer is used for updating the locally stored table entry reporting state of each VSI based on the table entry reporting state of each VSI, and periodically reporting the forwarding table entry in the VSI updated to the reporting enabling state to the protocol software layer.
Optionally, when determining the entry reporting state of each VSI on the device, the protocol software layer is specifically configured to:
when the equipment is initialized, the protocol software layer determines that the report state of each VSI table item on the equipment is a report disabling state;
after the initialization of the equipment is completed, if the protocol software layer detects that the equipment establishes a BGP session with opposite-end VTEP equipment, determining that the report state of the shared VSI table items on the equipment and the opposite-end VTEP equipment is a report enabling state and determining that the report states of other VSI table items except the shared VSI are unchanged;
if the protocol software layer detects that the BGP session between the equipment and the opposite-end VTEP equipment is disconnected, determining that the list item reporting state of the shared VSI on the equipment and the opposite-end VTEP equipment is a reporting disabling state, and determining that the list item reporting states of other VSIs except the shared VSI are unchanged.
Optionally, after determining the entry reporting state of each VSI on the device, the protocol software layer is further configured to generate a bitmap based on the entry reporting state of each VSI; each bit in the bitmap corresponds to one VSI in each VSI, and the value of each bit represents the table entry reporting state of the VSI corresponding to the bit;
the protocol software layer is specifically configured to call an interface function of the entry management layer when issuing the entry reporting state of each VSI to the entry management layer, and issue the bitmap to the entry management layer through the interface function.
Optionally, the table entry management layer stores AVL trees corresponding to the VSIs one to one; all forwarding table entries in the VSI corresponding to the AVL tree are stored in the AVL tree;
the entry management layer updates the entry reporting state of each locally stored VSI in the entry reporting state based on each VSI, and periodically reports the forwarding entry in the VSI updated to the reporting enable state to the protocol software layer, and is specifically configured to:
for each VSI, when the entry reporting state of the VSI is a reporting enabling state, adding a reporting mark for the VSI; when the entry reporting state of the VSI is a reporting disabled state, if the VSI is provided with a reporting mark, deleting the reporting mark, and if the VSI is not provided with the reporting mark, not adding the reporting mark to the VSI;
and traversing each VSI periodically, determining a target VSI with a reporting mark, searching an AVL (Audio video Link) tree corresponding to the target VSI, and reporting all forwarding table entries stored in the AVL tree to the protocol software layer.
Optionally, each VSI is configured with a report flag, and a value of the report flag represents a table entry report state of the VSI;
the table entry management layer stores AVL trees corresponding to all VSIs one to one; all forwarding table entries in the VSI corresponding to the AVL tree are stored in the AVL tree;
the entry management layer updates the entry reporting state of each locally stored VSI in the entry reporting state based on each VSI, and periodically reports the forwarding entry in the VSI updated to the reporting enable state to the protocol software layer, and is specifically configured to:
for each VSI, when the entry reporting state of the VSI is a reporting enabling state, setting the value of a reporting mark of the VSI as a first preset value; when the entry reporting state of the VSI is a reporting disabled state, setting the value of the reporting mark of the VSI as a second preset value;
and traversing each VSI periodically, determining a target VSI with the reporting mark value being a first preset value, searching an AVL tree corresponding to the target VSI, and reporting all forwarding table entries stored in the AVL tree to the protocol software layer.
As can be seen from the above description, after the protocol software layer determines the entry reporting states of the VSIs carried by the device, the entry reporting states of the VSIs can be issued to the entry management layer in batch. And the table item management layer updates the locally recorded table item reporting state of each VSI based on the table item reporting state of each VSI, and periodically reports the forwarding table item in the VSI updated to the table item reporting enabled to the protocol software layer, so that the table item management layer reports the forwarding table item required to be synchronized by the protocol software layer to the protocol software layer.
Drawings
Fig. 1 is a flowchart illustrating a method for reporting a forwarding entry according to an exemplary embodiment of the present application;
FIG. 2 is a bit map illustration of an exemplary embodiment of the present application;
FIG. 3a is a diagram of a conventional AVL tree for storing forwarding entries;
fig. 3b is an AVL tree diagram for storing forwarding entries according to an exemplary embodiment of the present application;
FIG. 4a is another bit map illustration shown in an exemplary embodiment of the present application;
FIG. 4b is another bit map illustration shown in an exemplary embodiment of the present application;
FIG. 4c is another bit map illustration shown in an exemplary embodiment of the present application;
fig. 5 is a schematic diagram of a VTEP apparatus shown in an exemplary embodiment of the present application.
Detailed Description
Reference will now be made in detail to the exemplary embodiments, examples of which are illustrated in the accompanying drawings. When the following description refers to the accompanying drawings, like numbers in different drawings represent the same or similar elements unless otherwise indicated. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with the present application. Rather, they are merely examples of apparatus and methods consistent with certain aspects of the present application, as detailed in the appended claims.
The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the application. As used in this application and the appended claims, the singular forms "a", "an", and "the" are intended to include the plural forms as well, unless the context clearly indicates otherwise. It should also be understood that the term "and/or" as used herein refers to and encompasses any and all possible combinations of one or more of the associated listed items.
It is to be understood that although the terms first, second, third, etc. may be used herein to describe various information, such information should not be limited to these terms. These terms are only used to distinguish one type of information from another. For example, first information may also be referred to as second information, and similarly, second information may also be referred to as first information, without departing from the scope of the present application. The word "if" as used herein may be interpreted as "at … …" or "when … …" or "in response to a determination", depending on the context.
First, the concepts related to the present application will be described.
1) Protocol software layer
The protocol software layer is a layer divided on the logic level (or software level) of the VTEP equipment.
The protocol software layer is used for processing the BGP protocol service with the VTEP at the opposite end, for example, for sending the forwarding table entry reported by the table entry management layer to the VTEP equipment at the opposite end through the BGP protocol.
The protocol software layer comprises business processing logic, objects required to be stored by business processing and the like.
2) Entry management layer
The table entry management layer is a layer divided on the logic level (or software level) of the VTEP equipment.
The table item management layer is mainly used for managing the forwarding table items of the software layer. For example, the entry management layer may report the forwarding entry to the protocol software layer.
The table item management layer comprises a service logic of table item management, a storage object required to be stored by the table item management, and the like.
3) Forwarding table entry of VSI
In an EVPN networking network, a VTEP device is usually configured with multiple VSIs, and a forwarding table entry on the VTEP device usually includes: VSI identification, destination address, egress interface, etc.
The forwarding table entry of a certain VSI or the forwarding table entry belonging to a certain VSI described in this application means that the VSI identifier of the forwarding table entry is the forwarding table entry of the VSI.
For example, the forwarding table on the VTEP is shown in table 1.
VSI identification Destination address Outlet interface
VSI
1 MAC1 Eth1
VSI
2 MAC2 Eth2
VSI
1 MAC3 Eth3
TABLE 1
Wherein, the forwarding table entry of the VSI1 or the forwarding table entry belonging to the VSI1 is a forwarding table entry with the destination address of MAC1 and MAC 3.
The forwarding table entry of VSI 2 or the forwarding table entry belonging to VSI 2 is a forwarding table entry whose destination address is MAC 2.
After introducing the above concept, the following describes in detail a method for reporting and configuring a forwarding table entry provided in the present application.
Referring to fig. 1, fig. 1 is a flowchart illustrating a method for reporting and configuring a forwarding table entry according to an exemplary embodiment of the present application, where the method may be applied to a VTEP device, and the VTEP device may include a protocol software layer and a table entry management layer, and the method may include the following steps.
Step 101: and the protocol software layer determines the table entry reporting state of each VSI carried by the equipment.
Wherein the table entry reporting state includes: reporting an enabled state and reporting a disabled state. When the entry reporting state of the VSI is the report enabling state, the entry management layer needs to report the forwarding entry of the VSI. When the entry reporting state of the VSI is the reporting disabling state, the entry management layer does not need to report the forwarding entry of the VSI.
The first method is as follows:
when the equipment is initialized, the protocol software layer determines that the table entry reporting state of each VSI carried by the equipment is a reporting disabling state.
The second method comprises the following steps:
in the embodiment of the application, the protocol software layer may transmit the forwarding table item reported by the software management layer through a BGP session between the local device and the VTEP device at the opposite end, so that the VTEP device at the opposite end may learn the forwarding information of the local device. Therefore, the BGP session establishment or disconnection between the device and the VTEP device at the opposite end may affect the entry reporting state of the VSI shared by the device and the VTEP device at the opposite end.
In particular, the amount of the solvent to be used,
1) after the initialization of the device is completed, if the protocol software layer detects that a BGP session is established between the device and an opposite terminal device, the protocol software layer can determine that the table entry reporting state of the shared VSI on the device and the opposite terminal device is a reporting enabling state, and determine that the table entry reporting states of other VSIs except the shared VSI in each VSI are unchanged.
2) After the initialization of the device is completed, if the protocol software layer detects that the BGP session between the device and the opposite-end VTEP device is disconnected, determining that the table entry reporting state of the shared VSI on the device and the opposite-end VTEP device is a reporting disabled state, and determining that the table entry reporting states of other VSIs except the shared VSI in each VSI are unchanged.
For example, suppose that each VSI on the device is VSI1, VSI 2 and VSI 3, and the VSI on the opposite-end VTEP device is VSI 2, VSI 3 and VSI 4. Then the VSIs common to both the device and the peer VTEP device are VSI 2 and VSI 3. And the other VSIs except the common VSI in the VSIs on the equipment are VSI 1.
1) If the protocol software layer detects that a BGP session is established between the equipment and the opposite terminal equipment, the protocol software layer can determine that the entry reporting states of the VSI 2 and the VSI 3 are the reporting enabling state.
The protocol software layer also records the last determined entry reporting state of each VSI, and can search the entry reporting state corresponding to the VSI1 in the record and determine that the entry reporting state of the VSI1 is still the last determined entry reporting state.
For example, if the last time the record determines that the entry reporting state of the VSI1 is the reporting disable state, the entry reporting state of the VSI1 is still the disable state at this time. If the last recorded determined entry reporting state of the VSI1 is the enabled state, the entry reporting state of the VSI1 is still the enabled state at this time.
2) If the protocol software layer detects that the BGP session between the equipment and the VTEP equipment at the opposite end is disconnected, the protocol software layer can determine that the entry reporting states of the VSI 2 and the VSI 3 are the reporting disabling state.
The protocol software layer can search the table entry reporting state corresponding to the VSI1 in the recorded table entry reporting state of the VSI determined last time, and determine that the table entry reporting state of the VSI1 is still the table entry reporting state determined last time.
For how the device determines that the device and the VTEP device at the opposite end share the VSI, the following method may be used to determine:
for example, the device and the VTEP device at the opposite end may establish a BGP session through an interactive negotiation, and in the interactive negotiation process or after establishing the BGP session, the device and the VTEP device at the opposite end may interact with their respective VSI information, so that both the device and the VTEP device at the opposite end know the VSI carried on the device at the opposite end, and the protocol software layer determines the common VSI according to the VSI of the device and the VSI on the VTEP device at the opposite end.
Certainly, after receiving a configuration instruction input by a user, the software protocol layer may determine, based on the VSI identifier and the entry reporting state carried in the configuration instruction, that the entry reporting state of the VSI indicated by the VSI identifier is the entry reporting state carried in the configuration instruction. And reporting states of other VSI list items except the VSI are unchanged.
For example, the present device includes 3 VSIs, VSI1, VSI 2 and VSI 3. The current entry reporting state of each VSI is a reporting disabling state.
When the software protocol layer receives a configuration instruction input by a user, based on VSI1 and a report enabling state carried in the configuration instruction, the VSI1 is determined to be in the report enabling state, and VSI 2 and VSI 3 are still in the report disabling state.
The above is only an exemplary description of how the software protocol layer determines the entry reporting state of each VSI, and is not specifically limited.
In addition, in the embodiment of the present application, after determining the entry reporting state of each VSI, the protocol software layer may generate a bitmap for recording the entry reporting state of each VSI based on the entry reporting state of each VSI.
Each bit in the bitmap represents one of the VSIs, and the value on the bit represents the entry reporting state of the VSI corresponding to the bit. For example, a bit value of 1 represents a report enable state, and a bit value of 0 represents a report disable state.
For example, assume that there are three VSIs on the VTEP device, which are VSI1, VSI 2 and VSI 3, assume that VSI1 and VSI 3 are in the report enabled state, and VSI 2 is in the report disabled state.
The protocol software layer may generate a bitmap based on the entry reporting states of the three VSIs, and the generated bitmap is shown in fig. 2.
Each cell of the bitmap in fig. 2 represents one bit, the first bit from left to right represents VSI1, which takes a value of 1, the second bit represents VSI 2, which takes a value of 0, and the third bit represents VSI 3, which takes a value of 1.
Step 102: and the protocol software layer issues the report state of each VSI to the table management layer in batch.
In an optional implementation manner, the protocol software layer may call an interface function of the entry management layer, use the generated bitmap as a parameter of the interface function, and send the bitmap to the entry management layer through the interface function.
It should be noted that, when the protocol software layer issues the entry reporting status of each VSI, the conceivable method is as follows: and the protocol software layer calls the interface function of the table entry management layer for multiple times and issues the table entry reporting state of each VSI one by one.
This approach is disadvantageous in that: the number of times of calling the table item management layer interface function by the protocol software layer in a cross-layer mode is too large, and the system working efficiency of the VTEP equipment is greatly influenced.
In the method, the protocol software layer only needs to call the interface function of the table item management layer once, and can issue the report states of all VSI table items to the table item management layer in batches in a bitmap mode, so the issuing method can greatly reduce the times of calling the interface function across layers, and greatly improve the system working efficiency of the VTEP equipment
Of course, the protocol software layer may also represent the entry reporting status of each VSI in a data organization manner such as an array, a table, and the like, which is only described by way of example and is not specifically limited.
Of course, the protocol software layer may also issue the entry reporting state of each VSI to the software management layer through notification methods such as a message, where the issue method is only exemplarily described here and is not specifically limited.
Step 103: and the table item management layer updates the locally stored table item reporting state of each VSI based on the table item reporting state of each VSI, and periodically reports the forwarding table item in the VSI updated to the reporting enabling state to the protocol software layer.
The protocol software layer only needs to issue when determining the entry reporting state of each VSI, and the entry management layer can periodically report the forwarding entries in the VSI in the enabling state based on the entry reporting state of each VSI.
The protocol software layer is adopted to inform the reporting state of each VSI item, and the item management layer periodically reports the forwarding items in the VSI in the reporting enabling state, so that the item management layer can report the current forwarding items in the VSI in the reporting enabling state, and can still actively report the subsequently learned forwarding items to the protocol software layer when the forwarding items aiming at the VSI are subsequently and newly learned.
In particular, the amount of the solvent to be used,
the first method is as follows:
the VSI reporting the enabling state and the VSI reporting the disabling state are distinguished by the mode of whether the reporting mark exists or not, so that the VSI reporting the enabling state is marked.
When the method is realized, the table entry management layer aims at each VSI, and if the table entry reporting state of the VSI is the reporting enabling state, a reporting mark is added to the VSI.
If the entry reporting status of the VSI is a reporting disable status and the VSI is configured with a reporting flag, the entry management layer may delete the reporting flag of the VSI. And if the VSI is not configured with the reporting mark, not adding the reporting mark for the VSI.
The VSI with the reporting flag represents that the VSI is in a reporting enabled state, and the VSI without the reporting flag represents that the VSI is in a reporting disabled state.
In addition, the table entry management layer can also periodically traverse each VSI to determine at least one target VSI with a reporting mark. Then, the entry management layer can search an AVL (Adelson-Velskii and Landis Tree, self-balancing binary search Tree) Tree corresponding to the target VSI, and report the forwarding entries stored in the searched AVL Tree to the protocol software layer.
The second method comprises the following steps:
the method and the device configure a reporting mark for each VSI, distinguish the VSI reporting the enabling state from the VSI reporting the disabling state according to the value of the reporting mark, and accordingly mark the VSI reporting the enabling state.
For example, when the value of the reporting flag is a first preset value, it indicates that the VSI is in the reporting enabled state, and when the value of the reporting flag is a second preset value, it indicates that the VSI is in the reporting disabled state.
When the method is realized, the list item management layer aims at each VSI, and if the list item reporting state of the VSI is the reporting enabling state, the reporting mark of the VSI is set to be a first preset value.
And if the entry reporting state of the VSI is the reporting disabling state, setting the reporting mark of the VSI as a second preset value.
In addition, the table entry management layer can also periodically traverse each VSI and determine at least one target VSI with the reporting mark value being the first preset value. Then the list item management layer can search the AVL tree corresponding to the target VSI and report the forwarding list items stored in the searched AVL tree to the protocol software layer.
It should be noted that, the conventional way for storing the forwarding table entry by the table entry management layer is as follows: storing all forwarding table entries in the same AVL tree, which results in discontinuous storage of forwarding table entries of the same VSI, so that when a table entry management layer reports a forwarding table entry of a certain VSI, it needs to traverse the whole AVL tree, detect one by one whether the forwarding table entry stored in the AVL tree is the forwarding table entry of the VSI, if the forwarding table entry is the forwarding table entry of the VSI, report the forwarding table entry to a protocol software layer, and if the forwarding table entry is not the forwarding table entry of the VSI, detect whether the next forwarding table entry is the forwarding table entry of the VSI, until all forwarding table entries in the AVL tree are detected.
For example, assume that there are 3 VSIs on VTEP, VSI1, VSI 2, and VSI 3, respectively. It is assumed that the 3 VSIs respectively have two forwarding entries, namely forwarding entry 1 (abbreviated as T1) and forwarding entry 2 (abbreviated as T2).
In the conventional technique of storing forwarding entries in the entry management layer, an AVL tree for storing forwarding entries in the entry management layer is shown in fig. 3 a.
As can be seen from fig. 3a, forwarding entries for the same VSI are not stored consecutively together. Assuming that the entry management layer needs to report the forwarding entries of the VSI1, the forwarding entries corresponding to the VSI1 can be found and reported only by sequentially traversing the whole AVL tree, so that the storage method can greatly reduce the efficiency of searching the forwarding entries corresponding to the VSI.
The method for storing the forwarding table entry by the table entry management layer stores the forwarding table entry according to the VSI. That is, in the entry management layer of the present application, each VSI corresponds to one AVL tree, and each AVL tree stores all forwarding entries of the VSI.
Therefore, when the entry management layer reports entries, all forwarding entries in the AVL tree can be reported only by finding the AVL tree corresponding to the VSI to be reported, without performing operations of traversing the entire AVL tree, detecting whether the forwarding entries are forwarding entries of the VSI to be reported, and the like in the conventional manner, so that the reporting efficiency of all forwarding entries in the VSI to be reported is greatly improved.
For example, assume that there are 3 VSIs on VTEP, VSI1, VSI 2, and VSI 3, respectively. It is assumed that the 3 VSIs respectively have two forwarding entries, namely forwarding entry 1 (abbreviated as T1) and forwarding entry 2 (abbreviated as T2).
In the present application, an AVL tree diagram for storing forwarding entries in the entry management layer is shown in fig. 3 b.
Here, VSI1 is taken as an example for explanation.
AVL tree 1 in fig. 3b represents an AVL tree corresponding to VSI1, and each lattice in AVL tree 1 represents a forwarding entry in VSI 1.
As can be seen from the above description, on one hand, after determining the entry reporting states of the VSIs carried by the device, the protocol software layer may issue the entry reporting states of the VSIs to the entry management layer in batch. And the table item management layer marks the VSI in the report enabling state based on the table item report state of each VSI, and periodically reports the forwarding table items in the marked VSI to the protocol software layer, so that the table item management layer reports the forwarding table items which are required to be synchronized by the protocol software layer to the protocol software layer.
On the other hand, the protocol software layer can issue the table entry reporting states of all VSIs to the table entry management layer in batch only by calling the interface function of the table entry management layer once, so the issuing method can greatly reduce the times of calling the interface function across layers and greatly improve the system working efficiency of the VTEP equipment
In the third aspect, each VSI in the table item management layer corresponds to an AVL tree, and all forwarding table items in the VSI are stored in the AVL tree, so that when the table item management layer reports the table item, all forwarding table items in the AVL tree can be reported only by finding the AVL tree corresponding to the VSI to be reported, and therefore, the reporting efficiency of all forwarding table items in the VSI to be reported is greatly improved.
The following describes in detail a method for reporting a forwarding entry provided in the present application by using a specific embodiment.
Assume that the VSI on the present device includes: VSI1, VSI 2 and VSI 3. The VSI on the peer device includes: VSI 2, VSI 3 and VSI 4.
1. During the initialization process of the device
Step 301: in the initialization process of the equipment, the protocol software layer can determine that all the VSI1, the VSI 2 and the VSI 3 are in the reporting disabled state, and the protocol software layer can generate the bitmap 1 based on the table entry reporting states of the three VSIs.
The bit map 1 is shown in figure 4 a.
According to the sequence from left to right, the first bit in the bit map 1 represents VSI1 and takes a value of 0 (representing reporting to disable state), the second bit represents VSI 2 and takes a value of 0 (representing reporting to disable state), and the third bit represents VSI 3 and takes a value of 0 (representing reporting to disable state).
Step 302: the protocol software layer can call an interface function of the software management layer, and then the bitmap 1 is used as an input parameter of the interface function, and the bitmap 1 is sent to the software management layer through the interface function.
Step 303: the software management layer can determine the table entry reporting state of each VSI according to the value of each bit of the bit map 1, and mark the VSI in the reporting enabling state based on the table entry reporting state of each VSI.
The first method is as follows: the software management layer may determine that the VSI1 is in the report disabled state according to the first bit value of the bit map 1 being 0, and then does not add the report flag to the VSI 1. Similarly, the software management layer can determine that the VSI 2 is in the report disabled state, and does not add a report mark to the VSI 2; VSI 3 is a report disable state and no report flag is added to VSI 3.
The second method comprises the following steps: the software management layer may determine that the VSI1 is in the report disabled state according to the fact that the first bit of the bitmap 1 takes a value of 0, and set the value of the report flag corresponding to the VSI1 to 0.
Similarly, the software management layer can determine that the VSI 2 is in the report disabled state, and set the value of the report flag corresponding to the VSI 2 to 0. The software management layer can determine that the VSI 3 is in the report disabled state, and set the value of the report mark corresponding to the VSI 3 to be 0.
2. The initialization of the device is completed
1) It is assumed that, after the initialization of the device is completed, the protocol software layer detects that the device establishes a BGP session with the peer device.
Step 311: when the protocol software layer detects that the BGP session is established between the equipment and the opposite terminal equipment, the protocol software layer can determine that the common VSI (namely VSI 2 and VSI 3) of the equipment and the opposite terminal equipment is in a reporting enabling state, and the reporting state is still in a reporting disabling state unless the table entries of other VSIs (namely VSI 1) of the common VSI are unchanged.
Step 312: the protocol software layer may generate the bitmap 2 based on the entry reporting status of the three VSIs.
As shown in fig. 4b, according to the sequence from left to right, the first bit in the bit map 2 represents VSI1, which takes a value of 0 (indicating reporting disabled state), the second bit represents VSI 2, which takes a value of 1 (indicating reporting enabled state), the third bit represents VSI 3, which takes a value of 1 (indicating reporting enabled state)
Step 313: the protocol software layer can call an interface function of the software management layer, and then the bitmap 2 is used as an input parameter of the interface function, and the bitmap 2 is sent to the software management layer through the interface function.
Step 314: the software management layer can determine the table entry reporting state of each VSI according to the value of each bit of the bit map 2, and mark the VSI in the reporting enabling state based on the table entry reporting state of each VSI.
The first method is as follows: the software management layer may determine that the VSI1 is in the report disabled state according to the first bit value of the bit map 2 being 0, and then does not add the report flag to the VSI 1.
Similarly, the software management layer can determine that the VSI 2 is in the reporting enabling state and add a reporting mark for the VSI 2; the VSI 3 is a report enabling state, and a report mark is added to the VSI 3.
The second method comprises the following steps: the software management layer may determine that the VSI1 is in the report disabled state according to the fact that the first bit of the bitmap 2 takes a value of 0, and set the value of the report flag corresponding to the VSI1 to 0.
Similarly, the software management layer may determine that the VSI 2 is in the report enabled state, and set the value of the report flag corresponding to the VSI 2 to 1. The software management layer can determine that the VSI 3 is in the report enabling state, and set the value of the report mark corresponding to the VSI 3 to be 1.
2) It is assumed that after the device runs for a period of time, the protocol software layer detects that the BGP session of the device is disconnected from the peer device.
Step 321: when the protocol software layer detects that the BGP session between the equipment and the opposite-end VTEP equipment is disconnected, the protocol software layer can determine that the common VSI (namely VSI 2 and VSI 3) of the equipment and the opposite-end equipment is in a reporting disabled state, and the reporting state of the table entries of other VSIs (namely VSI 1) of the common VSI is still in the reporting disabled state except that the reporting state of the table entries of the other VSIs (namely VSI 1) of the common VSI is unchanged.
Step 312: the protocol software layer may generate the bitmap 3 based on the entry reporting status of the three VSIs.
As shown in fig. 4c, according to the sequence from left to right, the first bit in the bit map 3 represents VSI1 and takes a value of 0 (representing a report disable state), the second bit represents VSI 2 and takes a value of 0 (representing a report disable state), the third bit represents VSI 3 and takes a value of 0 (representing a report disable state)
Step 313: the protocol software layer can call an interface function of the software management layer, and then the bitmap 3 is used as an input parameter of the interface function, and the bitmap 3 is sent to the software management layer through the interface function.
Step 314: the software management layer can determine the table entry reporting state of each VSI according to the value of each bit of the bit map 3, and mark the VSI in the reporting enabling state based on the table entry reporting state of each VSI.
The first method is as follows: the software management layer may determine that the VSI1 is in the report disabled state according to the fact that the first bit of the bitmap 3 takes a value of 0, and does not add a report flag to the VSI 1.
Similarly, the software management layer can determine that the VSI 3 is in a report disabled state, and the report mark of the VSI 2 is deleted because the report mark is set in the VSI 2; and similarly, deleting the reporting mark on the VSI 3.
The second method comprises the following steps: the software management layer may determine that the VSI1 is in the report disabled state according to the fact that the first bit of the bitmap 2 takes a value of 0, and set the value of the report flag corresponding to the VSI1 to 0.
Similarly, the software management layer can determine that the VSI 2 is in the report disabled state, and set the value of the report flag corresponding to the VSI 2 to 0. The software management layer can determine that the VSI 3 is in the report disabled state, and set the value of the report mark corresponding to the VSI 3 to be 0.
In addition, the software management layer can start a timer, traverse each VSI after the timer is overtime, and report the forwarding table entry of the VSI in the reporting enabling state marked at the time of the current overtime to the protocol software layer. And then the software management layer can restart the timer, traverse each VSI when the timer is overtime next time, and report the forwarding table entry of the VSI which is marked at the time of the next overtime and reports the enabling state to the protocol software layer, and so on.
The first method is as follows: after the timer expires, the software management layer may traverse each VSI to determine the target VSI with the reporting flag. And then searching an AVL tree corresponding to the target VSI, and reporting all forwarding table entries in the searched AVL tree to a protocol software layer.
For example, it is assumed that the entry reporting state of each VSI is not changed in a period from the end of device initialization to the establishment of a BGP session between the device and an opposite device.
After the software management layer regularly traverses each VSI, as each VSI does not have a report mark, a forwarding table entry corresponding to each VSI is not reported.
For another example, it is assumed that the entry reporting state of each VSI is not changed from the time period when the BGP session between the local device and the peer device is established to the time period when the BGP session between the local device and the peer device is disconnected.
In this time period, the software management layer may periodically traverse each VSI, determine that the VSI 2 and VSI 3 with the reporting flag are the target VSI, search for the AVL tree 2 corresponding to the VSI 2, and report all forwarding entries (including the existing forwarding entries and the newly learned forwarding entries) in the AVL tree 2 to the protocol software layer. The software management layer searches the AVL tree 3 corresponding to the VSI 3 and reports all forwarding table entries (including the existing forwarding table entries and newly learned forwarding table entries) in the AVL tree 3 to the protocol software layer.
The second method comprises the following steps: after the timer is overtime, the software management layer can traverse each VSI and determine a target VSI with the reporting mark value of 1. And then searching an AVL tree corresponding to the target VSI, and reporting all forwarding table entries in the searched AVL tree to a protocol software layer.
For example, it is assumed that the entry reporting state of each VSI is not changed in a period from the end of device initialization to the establishment of a BGP session between the device and an opposite device.
In this time period, after the software management layer regularly traverses each VSI, since the value of the reporting flag of each VSI is 0, the forwarding table entry corresponding to each VSI is not reported.
For another example, it is assumed that the entry reporting state of each VSI is not changed from the time period when the BGP session between the local device and the peer device is established to the time period when the BGP session between the local device and the peer device is disconnected.
In this time period, the software management layer may periodically traverse each VSI, determine that the VSI 2 and VSI 3 whose reporting flag values are 1 are target VSIs, search for the AVL tree 2 corresponding to the VSI 2, and report all forwarding entries (including the existing forwarding entries and the newly learned forwarding entries) in the AVL tree 2 to the protocol software layer. The software management layer searches the AVL tree 3 corresponding to the VSI 3 and reports all forwarding table entries (including the existing forwarding table entries and newly learned forwarding table entries) in the AVL tree 3 to the protocol software layer.
Referring to fig. 5, fig. 5 is a schematic diagram of a VTEP apparatus according to an exemplary embodiment of the present application. The VTEP device may include a protocol software layer 501 and an entry management layer 502, and of course, the forwarding device may include other layers, such as a hardware forwarding layer. The examples are illustrative only and not intended to be limiting.
The protocol software layer 501 is configured to determine a report state of each entry of the VSI on the device; the table entry reporting state includes: reporting an enabling state and reporting a disabling state;
the protocol software layer 501 is configured to issue the report status of each VSI to the entry management layer in batch;
the entry management layer 502 is configured to update the locally stored entry reporting state of each VSI based on the entry reporting state of each VSI, and periodically report the forwarding entry in the VSI updated to the reporting enable state to the protocol software layer.
Optionally, when determining the entry reporting state of each VSI on the device, the protocol software layer 501 is specifically configured to:
when the equipment is initialized, the protocol software layer determines that the report state of each VSI table item on the equipment is a report disabling state;
after the initialization of the equipment is completed, if the protocol software layer detects that the equipment establishes a BGP session with opposite-end VTEP equipment, determining that the report state of the shared VSI table items on the equipment and the opposite-end VTEP equipment is a report enabling state and determining that the report states of other VSI table items except the shared VSI are unchanged;
if the protocol software layer detects that the BGP session between the equipment and the opposite-end VTEP equipment is disconnected, determining that the list item reporting state of the shared VSI on the equipment and the opposite-end VTEP equipment is a reporting disabling state, and determining that the list item reporting states of other VSIs except the shared VSI are unchanged.
Optionally, after determining the entry reporting state of each VSI on the device, the protocol software layer 501 is further configured to generate a bitmap based on the entry reporting state of each VSI; each bit in the bitmap corresponds to one VSI in each VSI, and the value of each bit represents the table entry reporting state of the VSI corresponding to the bit;
the protocol software layer 501 is specifically configured to call an interface function of the entry management layer when issuing the entry reporting state of each VSI to the entry management layer, and issue the bitmap to the entry management layer through the interface function.
Optionally, the table entry management layer 502 stores AVL trees corresponding to the VSIs one to one; all forwarding table entries in the VSI corresponding to the AVL tree are stored in the AVL tree;
the entry management layer 502, in the entry reporting state based on each VSI, updates the entry reporting state of each locally stored VSI, and periodically reports the forwarding entry in the VSI updated to the reporting enable state to the protocol software layer, and is specifically configured to:
for each VSI, when the entry reporting state of the VSI is a reporting enabling state, adding a reporting mark for the VSI; when the entry reporting state of the VSI is a reporting disabled state, if the VSI is provided with a reporting mark, deleting the reporting mark, and if the VSI is not provided with the reporting mark, not adding the reporting mark to the VSI;
and traversing each VSI periodically, determining a target VSI with a reporting mark, searching an AVL (Audio video Link) tree corresponding to the target VSI, and reporting all forwarding table entries stored in the AVL tree to the protocol software layer.
Optionally, each VSI is configured with a report flag, and a value of the report flag represents a table entry report state of the VSI;
the table entry management layer 502 stores AVL trees corresponding to the VSIs one to one; all forwarding table entries in the VSI corresponding to the AVL tree are stored in the AVL tree;
the entry management layer 502, in the entry reporting state based on each VSI, updates the entry reporting state of each locally stored VSI, and periodically reports the forwarding entry in the VSI updated to the reporting enable state to the protocol software layer, and is specifically configured to:
for each VSI, when the entry reporting state of the VSI is a reporting enabling state, setting the value of a reporting mark of the VSI as a first preset value; when the entry reporting state of the VSI is a reporting disabled state, setting the value of the reporting mark of the VSI as a second preset value;
and traversing each VSI periodically, determining a target VSI with the reporting mark value being a first preset value, searching an AVL tree corresponding to the target VSI, and reporting all forwarding table entries stored in the AVL tree to the protocol software layer.
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 application. One of ordinary skill in the art can understand and implement it without inventive effort.
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 method for reporting a forwarding table entry is applied to a virtual extensible local area network tunnel endpoint (VTEP) device, wherein the VTEP device comprises a protocol software layer and a table entry management layer, and the method comprises the following steps:
the protocol software layer determines the table entry reporting state of each virtual switching instance VSI on the equipment; the table entry reporting state includes: reporting an enabling state and reporting a disabling state;
the protocol software layer sends the report state of each VSI list item to the list item management layer in batch;
and the table item management layer updates the locally stored table item reporting state of each VSI based on the table item reporting state of each VSI, and periodically reports the forwarding table item in the VSI updated to the reporting enabling state to the protocol software layer.
2. The method of claim 1, wherein the determining, by the protocol software layer, the entry reporting status of each VSI on the device includes:
when the equipment is initialized, the protocol software layer determines that the report state of each VSI table item on the equipment is a report disabling state;
after the initialization of the present apparatus is completed,
if the protocol software layer detects that the equipment and the opposite terminal VTEP equipment establish a BGP session, determining that the report state of the list items of the shared VSI on the equipment and the opposite terminal VTEP equipment is a report enabling state and determining that the report state of the list items of other VSIs except the shared VSI is unchanged;
if the protocol software layer detects that the BGP session between the equipment and the opposite-end VTEP equipment is disconnected, determining that the list item reporting state of the shared VSI on the equipment and the opposite-end VTEP equipment is a reporting disabling state, and determining that the list item reporting states of other VSIs except the shared VSI are unchanged.
3. The method according to claim 1, wherein after the protocol software layer determines the entry reporting status of each VSI on the device, the method further comprises:
the protocol software layer generates a bitmap based on the table entry reporting state of each VSI; each bit in the bitmap corresponds to one VSI in each VSI, and the value of each bit represents the table entry reporting state of the VSI corresponding to the bit;
the protocol software layer issues the table entry reporting state of each VSI to the table entry management layer, and the protocol software layer comprises the following steps:
and the protocol software layer calls an interface function of the table item management layer and issues the bit map to the table item management layer through the interface function.
4. The method of claim 1, wherein the table entry management layer stores a self-balancing binary search tree (AVL) tree corresponding to each VSI one-to-one; all forwarding table entries in the VSI corresponding to the AVL tree are stored in the AVL tree;
the entry management layer updates the entry reporting state of each locally stored VSI based on the entry reporting state of each VSI, and periodically reports the forwarding entry in the VSI updated to the reporting enable state to the protocol software layer, including:
aiming at each VSI, the table item management layer adds a report mark for the VSI when the table item report state of the VSI is a report enabling state; when the entry reporting state of the VSI is a reporting disabled state, if the VSI is provided with a reporting mark, deleting the reporting mark, and if the VSI is not provided with the reporting mark, not adding the reporting mark to the VSI;
the table item management layer periodically traverses each VSI, determines a target VSI with a reporting mark, searches an AVL tree corresponding to the target VSI, and reports all forwarding table items stored in the AVL tree to the protocol software layer.
5. The method of claim 1, wherein each VSI is configured with a reporting flag, and a value of the reporting flag represents an entry reporting status of the VSI;
the table entry management layer stores AVL trees corresponding to all VSIs one to one; all forwarding table entries in the VSI corresponding to the AVL tree are stored in the AVL tree;
the entry management layer updates the entry reporting state of each locally stored VSI based on the entry reporting state of each VSI, and periodically reports the forwarding entry in the VSI updated to the reporting enable state to the protocol software layer, including:
the entry management layer sets the value of a reporting mark of each VSI to be a first preset value when the entry reporting state of the VSI is a reporting enabling state; when the entry reporting state of the VSI is a reporting disabled state, setting the value of the reporting mark of the VSI as a second preset value;
the entry management layer periodically traverses each VSI, determines a target VSI with a reporting mark value of a first preset value, searches an AVL tree corresponding to the target VSI, and reports all forwarding entries stored in the AVL tree to the protocol software layer.
6. The VTEP device is characterized by comprising a protocol software layer and a table entry management layer;
the protocol software layer is used for determining the table entry reporting state of each virtual switch instance VSI on the equipment; the table entry reporting state includes: reporting an enabling state and reporting a disabling state;
the protocol software layer is used for issuing the report state of each VSI list item to the list item management layer in batch;
and the table entry management layer is used for updating the locally stored table entry reporting state of each VSI based on the table entry reporting state of each VSI, and periodically reporting the forwarding table entry in the VSI updated to the reporting enabling state to the protocol software layer.
7. The device according to claim 6, wherein the protocol software layer, when determining the entry reporting state of each VSI on the device, is specifically configured to:
when the equipment is initialized, the protocol software layer determines that the report state of each VSI table item on the equipment is a report disabling state;
after the initialization of the equipment is completed, if the protocol software layer detects that the equipment establishes a BGP session with opposite-end VTEP equipment, determining that the report state of the shared VSI table items on the equipment and the opposite-end VTEP equipment is a report enabling state and determining that the report states of other VSI table items except the shared VSI are unchanged;
if the protocol software layer detects that the BGP session between the equipment and the opposite-end VTEP equipment is disconnected, determining that the list item reporting state of the shared VSI on the equipment and the opposite-end VTEP equipment is a reporting disabling state, and determining that the list item reporting states of other VSIs except the shared VSI are unchanged.
8. The device according to claim 6, wherein the protocol software layer, after determining the entry reporting state of each VSI on the device, is further configured to generate a bitmap based on the entry reporting state of each VSI; each bit in the bitmap corresponds to one VSI in each VSI, and the value of each bit represents the table entry reporting state of the VSI corresponding to the bit;
the protocol software layer is specifically configured to call an interface function of the entry management layer when issuing the entry reporting state of each VSI to the entry management layer, and issue the bitmap to the entry management layer through the interface function.
9. The apparatus of claim 6, wherein the table entry management layer stores a self-balancing binary search tree (AVL) tree corresponding to each VSI one-to-one; all forwarding table entries in the VSI corresponding to the AVL tree are stored in the AVL tree;
the entry management layer updates the entry reporting state of each locally stored VSI in the entry reporting state based on each VSI, and periodically reports the forwarding entry in the VSI updated to the reporting enable state to the protocol software layer, and is specifically configured to:
for each VSI, when the entry reporting state of the VSI is a reporting enabling state, adding a reporting mark for the VSI; when the entry reporting state of the VSI is a reporting disabled state, if the VSI is provided with a reporting mark, deleting the reporting mark, and if the VSI is not provided with the reporting mark, not adding the reporting mark to the VSI;
and traversing each VSI periodically, determining a target VSI with a reporting mark, searching an AVL (Audio video Link) tree corresponding to the target VSI, and reporting all forwarding table entries stored in the AVL tree to the protocol software layer.
10. The device of claim 6, wherein each VSI is configured with a reporting flag, and a value of the reporting flag represents an entry reporting status of the VSI;
the table entry management layer stores AVL trees corresponding to all VSIs one to one; all forwarding table entries in the VSI corresponding to the AVL tree are stored in the AVL tree;
the entry management layer updates the entry reporting state of each locally stored VSI in the entry reporting state based on each VSI, and periodically reports the forwarding entry in the VSI updated to the reporting enable state to the protocol software layer, and is specifically configured to:
for each VSI, when the entry reporting state of the VSI is a reporting enabling state, setting the value of a reporting mark of the VSI as a first preset value; when the entry reporting state of the VSI is a reporting disabled state, setting the value of the reporting mark of the VSI as a second preset value;
and traversing each VSI periodically, determining a target VSI with the reporting mark value being a first preset value, searching an AVL tree corresponding to the target VSI, and reporting all forwarding table entries stored in the AVL tree to the protocol software layer.
CN201910011567.1A 2019-01-07 2019-01-07 Forwarding table entry reporting method and VTEP equipment Active CN109639556B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910011567.1A CN109639556B (en) 2019-01-07 2019-01-07 Forwarding table entry reporting method and VTEP equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910011567.1A CN109639556B (en) 2019-01-07 2019-01-07 Forwarding table entry reporting method and VTEP equipment

Publications (2)

Publication Number Publication Date
CN109639556A CN109639556A (en) 2019-04-16
CN109639556B true CN109639556B (en) 2021-05-28

Family

ID=66058018

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910011567.1A Active CN109639556B (en) 2019-01-07 2019-01-07 Forwarding table entry reporting method and VTEP equipment

Country Status (1)

Country Link
CN (1) CN109639556B (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113381937B (en) * 2021-06-09 2022-09-13 烽火通信科技股份有限公司 Information state reporting method and network equipment

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102195844A (en) * 2010-03-02 2011-09-21 杭州华三通信技术有限公司 Method and equipment for managing forwarding table entry
CN103227745A (en) * 2013-04-26 2013-07-31 杭州华三通信技术有限公司 Intercommunication method of shortest path bridging network and Layer 3 virtual private network and common edge equipment
CN106101008A (en) * 2016-05-31 2016-11-09 杭州华三通信技术有限公司 The transmission method of a kind of message and device
CN106899430A (en) * 2016-12-09 2017-06-27 新华三技术有限公司 A kind of flow method for processing forwarding and device
WO2017198163A1 (en) * 2016-05-20 2017-11-23 新华三技术有限公司 Access control
CN107547349A (en) * 2017-07-31 2018-01-05 新华三技术有限公司 A kind of method and device of virtual machine (vm) migration
CN107612808A (en) * 2017-09-13 2018-01-19 新华三技术有限公司 Tunnel establishing method and device
CN107612809A (en) * 2017-10-31 2018-01-19 新华三技术有限公司 A kind of multicast list synchronous method and equipment
CN108075956A (en) * 2016-11-16 2018-05-25 新华三技术有限公司 A kind of data processing method and device
CN108259304A (en) * 2017-12-28 2018-07-06 新华三技术有限公司 A kind of forwarding-table item synchronous method and device
CN108881024A (en) * 2018-05-31 2018-11-23 新华三技术有限公司 A kind of flux of multicast retransmission method and device

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102195844A (en) * 2010-03-02 2011-09-21 杭州华三通信技术有限公司 Method and equipment for managing forwarding table entry
CN103227745A (en) * 2013-04-26 2013-07-31 杭州华三通信技术有限公司 Intercommunication method of shortest path bridging network and Layer 3 virtual private network and common edge equipment
WO2017198163A1 (en) * 2016-05-20 2017-11-23 新华三技术有限公司 Access control
CN106101008A (en) * 2016-05-31 2016-11-09 杭州华三通信技术有限公司 The transmission method of a kind of message and device
CN108075956A (en) * 2016-11-16 2018-05-25 新华三技术有限公司 A kind of data processing method and device
CN106899430A (en) * 2016-12-09 2017-06-27 新华三技术有限公司 A kind of flow method for processing forwarding and device
CN107547349A (en) * 2017-07-31 2018-01-05 新华三技术有限公司 A kind of method and device of virtual machine (vm) migration
CN107612808A (en) * 2017-09-13 2018-01-19 新华三技术有限公司 Tunnel establishing method and device
CN107612809A (en) * 2017-10-31 2018-01-19 新华三技术有限公司 A kind of multicast list synchronous method and equipment
CN108259304A (en) * 2017-12-28 2018-07-06 新华三技术有限公司 A kind of forwarding-table item synchronous method and device
CN108881024A (en) * 2018-05-31 2018-11-23 新华三技术有限公司 A kind of flux of multicast retransmission method and device

Also Published As

Publication number Publication date
CN109639556A (en) 2019-04-16

Similar Documents

Publication Publication Date Title
US10296374B2 (en) Migration of virtual machines
CN102918808B (en) The method of transfer of virtual LAN Information in the discovery of phantom station interface and configuration protocol
KR101886291B1 (en) Flow entry configuration method, apparatus, and system
CN107733793B (en) Forwarding table item maintenance method and device
CN109561033B (en) Method and device for multicast replication in Overlay network
US9531566B2 (en) Control apparatus, a communication system, a communication method and a recording medium having recorded thereon a communication program including a control unit, a network configuration information management unit, and a path control unit
CN103501250B (en) Data flow processing method in distributed aggregated link network and device
US10263808B2 (en) Deployment of virtual extensible local area network
US7869439B1 (en) Varying packet switch behavior based on a quantity of virtual interfaces associated with a virtual switch
US20120294192A1 (en) Method and apparatus of connectivity discovery between network switch and server based on vlan identifiers
EP3675419A1 (en) Method and apparatus for detecting network fault
CN101764751A (en) Method, system and equipment for forwarding roaming messages for wireless user terminal travelling across VLAN
CN101815107A (en) Method, system and equipment for managing address in Ethernet ring
CN108540386B (en) Method and device for preventing service flow interruption
CN101483571B (en) RRPP configuring method, system and device
US20190215191A1 (en) Deployment Of Virtual Extensible Local Area Network
CN103532851B (en) Data flow processing method in distributed aggregated link network and device
KR101665276B1 (en) System and method for a pass thru mode in a virtual chassis system
CN104836738A (en) Router hardware item resource management method and device, and network equipment
CN109639556B (en) Forwarding table entry reporting method and VTEP equipment
US7369513B1 (en) Method and apparatus for determining a network topology based on Spanning-tree-Algorithm-designated ports
CN107465621A (en) A kind of router finds method, SDN controllers, router and network system
CN113422735B (en) Load balancing configuration method, convergence diverter and medium
CN103414642A (en) Maintaining method and device of information forwarding
CN111682968B (en) Network access management method and system for communication equipment

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