CN103117931B - Media access control (MAC) address hardware learning method and system based on hash table and ternary content addressable memory (TCAM) table - Google Patents

Media access control (MAC) address hardware learning method and system based on hash table and ternary content addressable memory (TCAM) table Download PDF

Info

Publication number
CN103117931B
CN103117931B CN201310055657.3A CN201310055657A CN103117931B CN 103117931 B CN103117931 B CN 103117931B CN 201310055657 A CN201310055657 A CN 201310055657A CN 103117931 B CN103117931 B CN 103117931B
Authority
CN
China
Prior art keywords
list item
tcam
hash table
virtual switch
mac address
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
CN201310055657.3A
Other languages
Chinese (zh)
Other versions
CN103117931A (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.)
Fiberhome Telecommunication Technologies Co Ltd
Original Assignee
Fiberhome Telecommunication 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 Fiberhome Telecommunication Technologies Co Ltd filed Critical Fiberhome Telecommunication Technologies Co Ltd
Priority to CN201310055657.3A priority Critical patent/CN103117931B/en
Publication of CN103117931A publication Critical patent/CN103117931A/en
Priority to PCT/CN2013/080000 priority patent/WO2014127605A1/en
Priority to MYPI2014703365A priority patent/MY170382A/en
Priority to CL2015000917A priority patent/CL2015000917A1/en
Application granted granted Critical
Publication of CN103117931B publication Critical patent/CN103117931B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/30Peripheral units, e.g. input or output ports
    • H04L49/3009Header conversion, routing tables or routing tags

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Small-Scale Networks (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

The invention discloses a media access control (MAC) address hardware learning method and system based on a hash table and a ternary content addressable memory (TCAM) table, and relates to the MAC address learning field. According to the MAC address hardware learning method and system, when no MAC address conflict happens, the hash table is used for storing learned MAC addresses, and a static random access memory (SRAM) or a dynamic random access memory (DRAM) is applied to the hardware of the hash table; and when MAC address conflict happens, the TCAM table is used for caching conflicted MAC addresses, a TCAM storage is applied to the hardware of the TCAM, idle table items can be positioned through one-time searching due to the fact that parallel seeking is performed on the hardware of the TCAM, and the number of the table items of the TCAM is the number of the conflicted MAC addressed which can be practically cached. The MAC address hardware learning method is achieved on a general programmable exchange chip, does not need support of hardware circuits, is high in learning efficiency and small in occupied internal memory resources, is flexible in application due to the fact that the general algorithm is adopted, and can achieve complete control on conflict probability.

Description

The MAC Address hardware learning method shown based on Hash table and TCAM and system
Technical field
The present invention relates to MAC(Media Access Control, media interviews control) address learning field, particularly relate to a kind of based on HASH(Hash) table and TCAM(TernaryContent Addressable Memory, three-state content addressing memory) the MAC Address hardware learning method shown and system.
Background technology
Along with the development of economic globalization, increasing enterprise object scope expanding day, provides link to connect in the urgent need to telecom operators, each for enterprise branch is included into, and the dedicated network of composition enterprises.Under such market demand, VPLS(VirtualPrivate Lan Service, VPLS) technology arises at the historic moment, VPLS technology combines ethernet technology and MPLS(Multi-Protocol Label Switching, multiprotocol label switching) advantage of technology, the IP(Internet Protocol provided by operator, Internet protocol)/MPLS network connects the multiple LAN(Local Area Network be made up of Ethernet geographically isolated, local area network (LAN)), achieve the emulation to traditional LAN function, them are made to work as a LAN.
VPLS is by searching corresponding VSI(Virtual Switch Instance, Virtual Switch Instance) mac address forwarding table, instruct the forwarding of user's message, and mac address forwarding table is created by MAC address learning function.Therefore, MAC address learning function is the key factor realizing VPLS.
2 trigger conditions of MAC address learning are:
(1) certain VSI receives source MAC when being unknown unicast address;
(2) certain VSI receives a known source MAC, but the forwarding-table item of correspondence needs to upgrade, such as: receive VP(Virtual Port, the virtual switch port in VSI) there occurs change.
In MAC address learning, address conflict is inevitable problem, and reason is that MAC Address has 48bit, and VSI is generally greater than 10bit(and minimum support 1k VSI according to the different values of place capacity).If MAC Address conflict will be avoided in theory, then need exhaustive all MAC Address combined situation, at least need 2^58=256P(Computer Storage unit, 1Peta=1024T) individual list item, obviously can not carry out the list item of the so large order of magnitude of buffer memory with hardware.
The method of current solution MAC Address conflict has following three kinds:
(1) relying on master cpu (Central Processing Unit, central processing unit) and help solve address conflict: a kind of MAC Address software learning method, namely on master cpu, solving address conflict issues by realizing " conflict chained list " algorithm.Because master cpu is commonly used to run complicated Routing Protocol, burden itself is heavier, therefore, waste very much valuable master cpu process resource, and compared with MAC Address hardware learning method, the learning rate of this MAC Address software learning method is lower.
(2) single Hash table buffer memory collision method: a kind of MAC Address hardware learning method, a Hash table is used to carry out the conflict of buffer memory MAC Address, namely by expanding the capacity of Hash table, to reduce the probability that conflict produces, be the simplest, the modal buffer memory collision method of one.
The binary value of random length is mapped as the less binary value of regular length by hash algorithm, to realize the compression of data, and by initial data being broken up with discrete, to suppress the data collision mapping rear generation.Conventional hash algorithm has MD2(Message DigestAlgorithm2, the Message Digest 5 second edition), MD5(Message Digest Algorithm5, Message Digest Algorithm 5), CRC(Cyclic Redundancy Check, cyclic redundancy check (CRC)) 32 etc.In practical application, the normal CRC32 that adopts is used as hash algorithm.For 64K address table, VSI and source MAC CRC32 algorithm are calculated the Hash hashed value of 32bit, and intercept low 16bit(2^16=64K using after the high and low 16bit XOR of 32bit result) as index value, remove the list item in index RAM.If two MAC Address 16bit centrifugal pumps are identical, then one of them MAC Address cannot be buffered; Now, can only expect that the bit17 of two MAC Address CRC32Hash values is different, and list item capacity is expanded 128k by 64k, carry out further mitigate collisions with this.
Single Hash bucket buffer memory collision method reduces collision probability by the method for expansion centrifugal pump bit number, often increases 1bit centrifugal pump, needs collision table capacity extension one times, therefore very large to the collision table wasting of resources.And because this way relies on the location that centrifugal pump carries out list item completely, dilatation list item howsoever, all the time cannot the identical multiple MAC Address of buffer memory centrifugal pump.In addition, when MAC Address sample changes, the collision probability allowed when can not ensure system.
(3) many barrels of buffer memory collision methods: a kind of MAC Address hardware learning method, the method uses multiple bucket to carry out mitigate collisions, at some ASIC(Application SpecificIntegrated Circuit, application-specific integrated circuit (ASIC)) chip realizes, namely adopt hardware circuit to simulate multiple conflict bucket, each conflict bucket possesses the ability of certain buffer memory conflict.Still for 64k address list item, by the discrete MAC Address of CRC32 algorithm, and the low 16bit getting 32bit hash value is as discrete results, first use the low 13bit(2^13=8K of 16bit centrifugal pump) go to locate 8K conflict bucket, there are 8 conflict list items in each conflict bucket; Then, in the conflict bucket when prelocalization, the list item in removal search 8 conflict list item hollow spare time, if available free list item, puts into sky list item; If no, then cannot buffer memory conflict.
Many barrels of buffer memory collision methods solve single Hash bucket to a great extent cannot the problem of the identical MAC Address of buffer memory centrifugal pump, and the utilization ratio of hardware resource is also higher, but, the method needs the collaborative work of a large amount of conflict bucket, need the support of special hardware circuit, and the searching method of idle list item needs special hardware circuit to realize searching algorithm in each conflict bucket, the algorithm realized due to it is also unexposed, therefore applies dumb; In addition, because the method only utilizes idle list item resource in current conflict bucket to carry out buffer memory conflict, therefore, can only the identical MAC Address of maximum 8 centrifugal pumps of buffer memory, limited in one's ability to identical its buffer memory of the harsh conditions conflict of more centrifugal pumps.
Summary of the invention
The object of the invention is the deficiency in order to overcome above-mentioned background technology, there is provided a kind of based on Hash table and TCAM table MAC Address hardware learning method and system, general exchange chip able to programme realizes, and do not need the support of special hardware circuit, learning rate is higher; The memory source taken is less, adopts general algorithm, applying flexible, can realize collision probability completely controlled.
The MAC Address hardware learning method shown based on Hash table and TCAM provided by the invention, comprises the following steps:
S1, calculate cryptographic Hash with the Virtual Switch Instance belonging to message number and source MAC, and be indexed search Hash table with cryptographic Hash;
The key assignments of S2, organize search TCAM list item: the Virtual Switch Instance number of Virtual Switch Instance number belonging to message; MAC Address is the source MAC of message; List item full scale will puts 1, represents to search in the TCAM list item learnt;
S3, to judge in TCAM list item data effective marker whether set, if set, then forward S4 to; Otherwise, forward S6 to;
S4, compare virtual switch port in TCAM list item data and whether equal message and receive virtual switch port, if so, then list item does not need to upgrade, and forwards S15 to; Otherwise, represent that TCAM list item needs to upgrade, forward S5 to;
S5, to upgrade virtual switch port in current TCAM list item data be message actual reception virtual switch port, forwards S15 to;
S6, to judge in Hash table the whether set of data effective marker, if set, then forward S8 to; Otherwise, forward S7 to;
S7, be stored in current hash table by the virtual switch port that Virtual Switch Instance belonging to message source MAC Address, message number and message receive, list item effective marker puts 1, forwards S15 to;
S8, to compare in Hash table Virtual Switch Instance number and MAC Address and whether match with the Virtual Switch Instance belonging to message number and source MAC, if coupling, then represent that current address has been in Hash table middle school, forwards S9 to; Otherwise, forward S11 to;
In S9, more current Hash table, whether virtual switch port equals message actual reception virtual switch port, if equal, then hash table does not need to upgrade, and forwards S15 to; Otherwise, forward S10 to;
S10, the virtual forwarding port numbers upgraded in current hash table are message actual reception virtual port number, forward S15 to;
S11, produce hash-collision, the key assignments of organize search TCAM list item is to find the conflict of idle TCAM list item buffer memory: in key assignments, Virtual Switch Instance is number for 0, and MAC Address is 0, and list item is completely masked as 0, represents to search in idle TCAM list item;
S12, to judge in TCAM data effective marker whether set, if set, represent and find first idle list item, forward S14 to; Otherwise, forward S13 to;
S13, TCAM memory does not have idle list item, abandons study, forwards S15 to;
S14, MAC Address is cached in current idle TCAM list item: the Virtual Switch Instance number of key assignments extends this as Virtual Switch Instance number belonging to message, and mask puts 1; MAC Address extends this as the source MAC of message, and mask puts 1; List item full scale will puts 1, and mask puts 1; In data, virtual switch port extends this as message actual reception virtual switch port, forwards S15 to;
S15, MAC Address hardware learning process terminate.
On the basis of technique scheme, before step S1, also comprise the initialized step of list item: judge whether initial table entry index is greater than list item maximum, if so, then return exception; Otherwise judge whether initial table entry index value is positioned at hashed table index scope, if so, then initialization Hash table, directly with initialization index value location hash table, and by contents in table all clear 0; Otherwise, judge initial table entry index be whether TCAM last, if, then last TCAM list item of initialization, in key assignments, all fields are all initialized as 0, and mask is 0, the equal assignment of all fields in data is 0, represents that this list item is last list item of TCAM; Otherwise by list item full scale will clear 0 in key assignments, mask puts 1, represent that current entry initial condition is empty, all the other fields clear 0 in key assignments, mask clear 0, in data, list item effective marker puts 1, all the other fields clear 0, and represent that this list item is not last list item, initialization terminates.
On the basis of technique scheme, after step S15, also comprise aging step: judge whether aging table item index is greater than list item maximum, if so, then return exception; Otherwise judge whether aging table item index value is positioned at hashed table index scope, if so, then aging Hash table, directly with initialization index value location hash table, and by contents in table all clear 0; Otherwise, judge aging table item index be whether TCAM last, if so, then last is the list item of any key assignments of coupling to represent TCAM, terminates aging; Otherwise by list item full scale will clear 0 in key assignments, mask puts 1, all the other fields clear 0, and mask clear 0, is set to sky by entry status, and in data, list item effective marker puts 1, all the other fields clear 0, represent that this list item is not last list item, aging end.
On the basis of technique scheme, described Hash table is stored in SRAM or DRAM.
On the basis of technique scheme, described TCAM list item is stored in TCAM memory.
The present invention also provides a kind of MAC Address hardware learning system shown based on Hash table and TCAM, comprises search unit, TCAM list item judging unit, Hash table judging unit, Hash table comparing unit and hash-collision processing unit, wherein:
Described search unit, for: calculate cryptographic Hash with the Virtual Switch Instance belonging to message number with source MAC, and be indexed search Hash table with cryptographic Hash; The key assignments of organize search TCAM list item: the Virtual Switch Instance number of Virtual Switch Instance number belonging to message; MAC Address is the source MAC of message; List item full scale will puts 1, represents to search in the TCAM list item learnt;
Described TCAM list item judging unit, for: to judge in TCAM list item data effective marker whether set, if set, then compare virtual switch port in TCAM list item data and whether equal message and receive virtual switch port, if so, then do not upgrade list item; Otherwise upgrading virtual switch port in current TCAM list item data is message actual reception virtual switch port; If there is no set, produce Hash table and judge triggering signal, and be sent to Hash table judging unit;
Described Hash table judging unit, for: receive Hash table judge triggering signal time, to judge in Hash table the whether set of data effective marker, if there is no set, be stored in current hash table by the virtual switch port that Virtual Switch Instance belonging to message source MAC Address, message number and message receive, list item effective marker puts 1; If set, produce and compare triggering signal, and be sent to Hash table comparing unit;
Described Hash table comparing unit, for: receive compare triggering signal time, relatively in Hash table, whether Virtual Switch Instance number and MAC Address match with the Virtual Switch Instance belonging to message number and MAC Address, if coupling, then represent that current address has been in Hash table middle school, in more current Hash table, whether virtual switch port equals message actual reception virtual switch port, if equal, then terminates study; Otherwise the virtual forwarding port numbers upgraded in current hash table is message actual reception virtual port number, terminate study; If do not mated, produce hash-collision process triggering signal, and be sent to hash-collision processing unit;
Described hash-collision processing unit, for: when receiving hash-collision process triggering signal, the key assignments of organize search TCAM list item is to find the conflict of idle TCAM list item buffer memory: in key assignments, Virtual Switch Instance is number for 0, MAC Address is 0, list item is completely masked as 0, represents to search in idle TCAM list item; To judge in TCAM data effective marker whether set again, if set, represent and find first idle list item, MAC Address is cached in current idle TCAM list item: the Virtual Switch Instance number of key assignments extends this as Virtual Switch Instance number belonging to message, and mask puts 1, MAC Address extends this as the source MAC of message, mask puts 1, and list item full scale will puts 1, and mask puts 1, in data, virtual switch port extends this as message actual reception virtual switch port, terminates study; If there is no set, represent that TCAM memory does not have idle list item, abandon study.
On the basis of technique scheme, also comprise initialization unit, for: judge whether initial table entry index is greater than list item maximum, if so, then return exception; Otherwise judge whether initial table entry index value is positioned at hashed table index scope, if so, then initialization Hash table, directly with initialization index value location hash table, and by contents in table all clear 0; Otherwise, judge initial table entry index be whether TCAM last, if, then last TCAM list item of initialization, in key assignments, all fields are all initialized as 0, and mask is 0, the equal assignment of all fields in data is 0, represents that this list item is last list item of TCAM; Otherwise by list item full scale will clear 0 in key assignments, mask puts 1, represent that current entry initial condition is empty, all the other fields clear 0 in key assignments, mask clear 0, in data, list item effective marker puts 1, all the other fields clear 0, and represent that this list item is not last list item, initialization terminates.
On the basis of technique scheme, also comprise aged cell, for: judge whether aging table item index is greater than list item maximum, if so, then return exception; Otherwise judge whether aging table item index value is positioned at hashed table index scope, if so, then aging Hash table, directly with initialization index value location hash table, and by contents in table all clear 0; Otherwise, judge aging table item index be whether TCAM last, if so, then last is the list item of any key assignments of coupling to represent TCAM, terminates aging; Otherwise by list item full scale will clear 0 in key assignments, mask puts 1, all the other fields clear 0, and mask clear 0, is set to sky by entry status, and in data, list item effective marker puts 1, all the other fields clear 0, represent that this list item is not last list item, aging end.
On the basis of technique scheme, described Hash table is stored in SRAM or DRAM.
On the basis of technique scheme, described TCAM list item is stored in TCAM memory.
Compared with prior art, advantage of the present invention is as follows:
(1) MAC Address hardware learning method of the present invention, realizes completely on exchange chip, and do not need the assistance relying on any master cpu, learning rate is higher.
(2) the present invention is not when having MAC Address to conflict, use Hash table stores the MAC Address learning to arrive, Hash table hardware realizes with SRAM or DRAM, capacity and bandwidth can be done larger, first-selected Hash table carrys out storage address list item, can make full use of the advantage of RAM Large Copacity hardware resource.When there is MAC Address conflict, TCAM table is used to carry out the MAC Address of buffer memory conflict, TCAM shows hardware adopts TCAM memory to realize, due to TCAM hardware being parallel search, once search can locate idle list item, and the list item number of TCAM is exactly the MAC Address number of the conflict of actual energy buffer memory, therefore, the fast parallel advantage of searching of TCAM can not only be made full use of, and it is completely controlled to realize collision probability, in addition, owing to carrying out the MAC Address of buffer memory conflict without Hash table, the memory source therefore taken is less.
(3) the present invention can realize on general exchange chip able to programme, does not need the support of special hardware circuit, adopts general algorithm, applies very flexible.
(4) the present invention uses TCAM to show the MAC Address of buffer memory conflict, the MAC Address total amount of the conflict of energy buffer memory is that the TCAM total amount of opening up subtracts 1, collision probability is controlled, the number of the MAC Address of the conflict of energy buffer memory is determined constant, can not change along with the change of MAC Address sample, the ability of MAC Address of buffer memory conflict is secure, even if in the worst situation of conflict, TCAM table still can the nearly all MAC Address conflict of buffer memory.
Accompanying drawing explanation
Fig. 1 is the initialized flow chart of list item in the embodiment of the present invention.
Fig. 2 is the flow chart of MAC Address hardware learning method based on Hash table and TCAM table in the embodiment of the present invention.
Fig. 3 is flow chart aging in the embodiment of the present invention.
Embodiment
Below in conjunction with drawings and the specific embodiments, the present invention is described in further detail.
TCAM is a kind of three-state content addressing memory, and in TCAM, each bit data have three kinds of states: except common " 0 " and " 1 ", one in addition " don ' t care " (namely need not mate this bit) state, so be referred to as " tri-state ".The function of " tri-state " is realized by mask, and namely mask is 0, represents the key assignments that " dont ' t care " is given; Mask is 1, represents the key assignments needing exact matching given.This characteristic of TCAM makes it complete exact matching, also can complete fuzzy matching.Another feature of TCAM is exactly " parallel search ", i.e. a given key assignments, then TCAM can mate all hardware table items simultaneously, and that table item index that return address index value is minimum.
The embodiment of the present invention adopts RAM to deposit Hash table, as the main storage of MAC address learning, in conjunction with the feature of TCAM memory " tri-state storages " and " parallel search ", carrys out the MAC Address that buffer memory conflicts.On function divides, Hash table is as the main storage of MAC Address, and the Core Feature of buffer address conflict has been responsible for by TCAM table.Hash table and TCAM table are worked in coordination and are jointly completed the function of MAC address learning, and it needs initialization on realizing, the close fit of the study of address and the aging three of address could realize.
Hash table is stored in SRAM or DRAM, and TCAM list item is stored in TCAM memory.
Ginseng is shown in Table 1, and the data structure of Hash table comprises Virtual Switch Instance (Vsi), Mac address, list item effective marker (Valid) and virtual switch port (Vp).
The data structure definition table of table 1, Hash table
Member 1 Member 2 Member 3 Member 4
Virtual Switch Instance (Vsi) Mac address List item effective marker (Valid) Virtual switch port (Vp)
Ginseng is shown in Table 2, the data structure of TCAM list item comprises key assignments (Key) and data (Data), key assignments (Key) comprises Virtual Switch Instance (Vsi), Mac address and list item full scale will (FlagFull), and data (Data) comprise list item effective marker (Valid) and virtual switch port (Vp).
The data structure definition table of table 2, TCAM list item
Shown in Figure 1, in the embodiment of the present invention, the initialized flow process of list item is as follows:
Step 101, judge whether initial table entry index is greater than list item maximum, if so, then forward step 102 to; Otherwise, forward step 103 to;
Step 102, initial table entry index scope exceed list item maximum, return exception, forward step 108 to;
Step 103, judge whether initial table entry index value is positioned at hashed table index scope, if so, then forwards step 104 to; Otherwise, forward step 105 to;
Step 104, initialization Hash table, directly with initialization index value location hash table, and by contents in table all clear 0, forward step 108 to;
Step 105, judge initial table entry index be whether TCAM last, if so, then forward step 106 to; Otherwise, forward step 107 to;
Step 106, last TCAM list item of initialization, in key assignments, all fields are all initialized as 0, and mask is 0, and namely this list item is the list item of " catch all " (mating any key assignments); The equal assignment of all fields in data is 0, represent that this list item is last list item of TCAM, can not be used for buffer address conflict, the effect of last list item of TCAM is: (1) is when business forwarding lookup is to this list item, can judge there is no this MAC Address of buffer memory in whole TCAM list item, thus need to continue search Hash table and forward with service guidance; (2) find this list item when MAC address learning searches for idle list item, then represent that the TCAM buffer memory that conflicts is full, cannot the MAC Address of buffer memory conflict again; Therefore the conflict total amount of actual energy buffer memory is that TCAM list item sum subtracts 1, forwards step 108 to;
Step 107, by list item full scale will clear 0 in key assignments, mask is put 1(and is represented that current entry initial condition is for empty), all the other fields clear 0 in key assignments, mask clear 0, in data, list item effective marker puts 1, all the other fields clear 0, represents that this list item is not last list item, can be used for buffer memory conflict MAC Address, forward step 108 to;
The initialized flow process of step 108, list item terminates.
Shown in Figure 2, the embodiment of the present invention provides a kind of MAC Address hardware learning method shown based on Hash table and TCAM, comprises the following steps:
Step 201, calculate cryptographic Hash with the Virtual Switch Instance belonging to message number and source MAC, and be indexed search Hash table with cryptographic Hash;
The key assignments of step 202, organize search TCAM list item: the Virtual Switch Instance number of Virtual Switch Instance number belonging to message; MAC Address is the source MAC of message; List item full scale will puts 1, represents to search in the TCAM list item learnt;
Step 203, to judge in TCAM list item data effective marker whether set, if set, then forward step 204 to; Otherwise, forward step 206 to;
Step 204, compare virtual switch port in TCAM list item data and whether equal message and receive virtual switch port, if so, then list item does not need to upgrade, and forwards step 215 to; Otherwise, represent that TCAM list item needs to upgrade, forward step 205 to;
Step 205, to upgrade virtual switch port in current TCAM list item data be message actual reception virtual switch port, forwards step 215 to;
Step 206, to judge in Hash table the whether set of data effective marker, if set, then forward step 208 to; Otherwise, forward step 207 to;
Step 207, by message source MAC Address, the virtual switch port that Virtual Switch Instance belonging to message number and message receive is stored in current hash table, and list item effective marker puts 1, forwards step 215 to;
Step 208, to compare in Hash table Virtual Switch Instance number and MAC Address and whether match with the Virtual Switch Instance belonging to message number and source MAC, if coupling, then represent that current address has been in Hash table middle school, forwards step 209 to; Otherwise, forward step 211 to;
In step 209, more current Hash table, whether virtual switch port equals message actual reception virtual switch port, if equal, then hash table does not need to upgrade, and forwards step 215 to; Otherwise, forward step 210 to;
Step 210, the virtual forwarding port numbers upgraded in current hash table are message actual reception virtual port number, forward step 215 to;
Step 211, produce hash-collision, the key assignments of organize search TCAM list item is to find the conflict of idle TCAM list item buffer memory: in key assignments, Virtual Switch Instance is number for 0, and MAC Address is 0, and list item is completely masked as 0, represents to search in idle TCAM list item;
Step 212, to judge in TCAM data effective marker whether set, if set, represent and find first idle list item, forward step 214 to; Otherwise, forward step 213 to;
Step 213, TCAM memory do not have idle list item can buffer memory conflict, abandon study, forward step 215 to;
Step 214, MAC Address is cached in current idle TCAM list item: the Virtual Switch Instance number of key assignments extends this as Virtual Switch Instance number belonging to message, and mask puts 1; MAC Address extends this as the source MAC of message, and mask puts 1; List item full scale will puts 1, and mask puts 1; In data, virtual switch port extends this as message actual reception virtual switch port, forwards step 215 to;
Step 215, MAC Address hardware learning process terminate.
Shown in Figure 3, flow process aging in the embodiment of the present invention is as follows:
Step 301, judge whether aging table item index is greater than list item maximum, if so, then forward step 302 to; Otherwise, forward step 303 to;
Step 302, initial table entry index scope exceed list item maximum, return exception, forward step 308 to;
Step 303, judge whether aging table item index value is positioned at hashed table index scope, if so, then forwards step 304 to; Otherwise, forward step 305 to;
Step 304, aging Hash table, directly with initialization index value location hash table, and by contents in table all clear 0, forward step 308 to;
Step 305, judge aging table item index be whether TCAM last, if so, then forward step 306 to; Otherwise, forward step 307 to;
Step 306, TCAM last be the list item of " catch all " (mating any key assignments), once initialization, do not need to operate on it, forward step 308 to;
Step 307, by list item full scale will clear 0 in key assignments, mask puts 1, all the other fields clear 0, mask clear 0, entry status is set to sky, and in data, list item effective marker puts 1, all the other fields clear 0, represent that this list item is not last list item, can be used for buffer memory conflict MAC Address, forward step 308 to;
Step 308, MAC address aging flow process terminate.
The embodiment of the present invention also provides a kind of MAC Address hardware learning system shown based on Hash table and TCAM, comprise initialization unit, search unit, TCAM list item judging unit, Hash table judging unit, Hash table comparing unit, hash-collision processing unit and aged cell, wherein:
Initialization unit, for: judge whether initial table entry index is greater than list item maximum, if so, then return exception; Otherwise judge whether initial table entry index value is positioned at hashed table index scope, if so, then initialization Hash table, directly with initialization index value location hash table, and by contents in table all clear 0; Otherwise, judge initial table entry index be whether TCAM last, if, then last TCAM list item of initialization, in key assignments, all fields are all initialized as 0, and mask is 0, the equal assignment of all fields in data is 0, represents that this list item is last list item of TCAM; Otherwise by list item full scale will clear 0 in key assignments, mask puts 1, represent that current entry initial condition is empty, all the other fields clear 0 in key assignments, mask clear 0, in data, list item effective marker puts 1, all the other fields clear 0, and represent that this list item is not last list item, initialization terminates;
Search unit, for: calculate cryptographic Hash with the Virtual Switch Instance belonging to message number with source MAC, and be indexed search Hash table with cryptographic Hash, Hash table is stored in SRAM or DRAM; TCAM list item is stored in TCAM memory, the key assignments of organize search TCAM list item: the Virtual Switch Instance number of Virtual Switch Instance number belonging to message; MAC Address is the source MAC of message; List item full scale will puts 1, represents to search in the TCAM list item learnt;
TCAM list item judging unit, for: to judge in TCAM list item data effective marker whether set, if set, then compare virtual switch port in TCAM list item data and whether equal message and receive virtual switch port, if so, then do not upgrade list item; Otherwise upgrading virtual switch port in current TCAM list item data is message actual reception virtual switch port; If there is no set, produce Hash table and judge triggering signal, and be sent to Hash table judging unit;
Hash table judging unit, for: receive Hash table judge triggering signal time, to judge in Hash table the whether set of data effective marker, if there is no set, be stored in current hash table by the virtual switch port that Virtual Switch Instance belonging to message source MAC Address, message number and message receive, list item effective marker puts 1; If set, produce and compare triggering signal, and be sent to Hash table comparing unit;
Hash table comparing unit, for: receive compare triggering signal time, relatively in Hash table, whether Virtual Switch Instance number and MAC Address match with the Virtual Switch Instance belonging to message number and MAC Address, if coupling, then represent that current address has been in Hash table middle school, in more current Hash table, whether virtual switch port equals message actual reception virtual switch port, if equal, then terminates study; Otherwise the virtual forwarding port numbers upgraded in current hash table is message actual reception virtual port number, terminate study; If do not mated, produce hash-collision process triggering signal, and be sent to hash-collision processing unit;
Hash-collision processing unit, for: when receiving hash-collision process triggering signal, the key assignments of organize search TCAM list item is to find the conflict of idle TCAM list item buffer memory: in key assignments, Virtual Switch Instance is number for 0, and MAC Address is 0, list item is completely masked as 0, represents to search in idle TCAM list item; To judge in TCAM data effective marker whether set again, if set, represent and find first idle list item, MAC Address is cached in current idle TCAM list item: the Virtual Switch Instance number of key assignments extends this as Virtual Switch Instance number belonging to message, and mask puts 1, MAC Address extends this as the source MAC of message, mask puts 1, and list item full scale will puts 1, and mask puts 1, in data, virtual switch port extends this as message actual reception virtual switch port, terminates study; If there is no set, represent that TCAM memory does not have idle list item, abandon study;
Aged cell, for: judge whether aging table item index is greater than list item maximum, if so, then return exception; Otherwise judge whether aging table item index value is positioned at hashed table index scope, if so, then aging Hash table, directly with initialization index value location hash table, and by contents in table all clear 0; Otherwise, judge aging table item index be whether TCAM last, if so, then last is the list item of any key assignments of coupling to represent TCAM, terminates aging; Otherwise by list item full scale will clear 0 in key assignments, mask puts 1, all the other fields clear 0, and mask clear 0, is set to sky by entry status, and in data, list item effective marker puts 1, all the other fields clear 0, represent that this list item is not last list item, aging end.
Those skilled in the art can carry out various modifications and variations to the embodiment of the present invention, if these amendments and modification belong within the scope of the claims in the present invention and equivalent technologies thereof, then these revise and modification also within protection scope of the present invention.
The prior art that the content do not described in detail in specification is known to the skilled person.

Claims (6)

1., based on the MAC Address hardware learning method that Hash table and TCAM are shown, it is characterized in that, comprise the following steps:
S1, calculate cryptographic Hash with the Virtual Switch Instance belonging to message number and source MAC, and be indexed search Hash table with cryptographic Hash;
The key assignments of S2, organize search TCAM list item: the Virtual Switch Instance number of Virtual Switch Instance number belonging to message; MAC Address is the source MAC of message; List item full scale will puts 1, represents to search in the TCAM list item learnt;
S3, to judge in TCAM list item data effective marker whether set, if set, then forward S4 to; Otherwise, forward S6 to;
S4, compare virtual switch port in TCAM list item data and whether equal message and receive virtual switch port, if so, then list item does not need to upgrade, and forwards S15 to; Otherwise, represent that TCAM list item needs to upgrade, forward S5 to;
S5, to upgrade virtual switch port in current TCAM list item data be message actual reception virtual switch port, forwards S15 to;
S6, to judge in Hash table the whether set of data effective marker, if set, then forward S8 to; Otherwise, forward S7 to;
S7, be stored in current hash table by the virtual switch port that Virtual Switch Instance belonging to message source MAC Address, message number and message receive, list item effective marker puts 1, forwards S15 to;
S8, to compare in Hash table Virtual Switch Instance number and MAC Address and whether match with the Virtual Switch Instance belonging to message number and source MAC, if coupling, then represent that current address has been in Hash table middle school, forwards S9 to; Otherwise, forward S11 to;
In S9, more current Hash table, whether virtual switch port equals message actual reception virtual switch port, if equal, then hash table does not need to upgrade, and forwards S15 to; Otherwise, forward S10 to;
S10, the virtual forwarding port numbers upgraded in current hash table are message actual reception virtual port number, forward S15 to;
S11, produce hash-collision, the key assignments of organize search TCAM list item is to find the conflict of idle TCAM list item buffer memory: in key assignments, Virtual Switch Instance is number for 0, and MAC Address is 0, and list item is completely masked as 0, represents to search in idle TCAM list item;
S12, to judge in TCAM data effective marker whether set, if set, represent and find first idle list item, forward S14 to; Otherwise, forward S13 to;
S13, TCAM memory does not have idle list item, abandons study, forwards S15 to;
S14, MAC Address is cached in current idle TCAM list item: the Virtual Switch Instance number of key assignments extends this as Virtual Switch Instance number belonging to message, and mask puts 1; MAC Address extends this as the source MAC of message, and mask puts 1; List item full scale will puts 1, and mask puts 1; In data, virtual switch port extends this as message actual reception virtual switch port, forwards S15 to;
S15, MAC Address hardware learning process terminate;
The initialized step of list item is also comprised: judge whether initial table entry index is greater than list item maximum, if so, then return exception before step S1; Otherwise judge whether initial table entry index value is positioned at hashed table index scope, if so, then initialization Hash table, directly with initialization index value location hash table, and by contents in table all clear 0; Otherwise, judge initial table entry index be whether TCAM last, if, then last TCAM list item of initialization, in key assignments, all fields are all initialized as 0, and mask is 0, the equal assignment of all fields in data is 0, represents that this list item is last list item of TCAM; Otherwise by list item full scale will clear 0 in key assignments, mask puts 1, represent that current entry initial condition is empty, all the other fields clear 0 in key assignments, mask clear 0, in data, list item effective marker puts 1, all the other fields clear 0, and represent that this list item is not last list item, initialization terminates;
Aging step is also comprised: judge whether aging table item index is greater than list item maximum, if so, then return exception after step S15; Otherwise judge whether aging table item index value is positioned at hashed table index scope, if so, then aging Hash table, directly with initialization index value location hash table, and by contents in table all clear 0; Otherwise, judge aging table item index be whether TCAM last, if so, then last is the list item of any key assignments of coupling to represent TCAM, terminates aging; Otherwise by list item full scale will clear 0 in key assignments, mask puts 1, all the other fields clear 0, and mask clear 0, is set to sky by entry status, and in data, list item effective marker puts 1, all the other fields clear 0, represent that this list item is not last list item, aging end.
2., as claimed in claim 1 based on the MAC Address hardware learning method that Hash table and TCAM are shown, it is characterized in that: described Hash table is stored in SRAM or DRAM.
3., as claimed in claim 1 based on the MAC Address hardware learning method that Hash table and TCAM are shown, it is characterized in that: described TCAM list item is stored in TCAM memory.
4., based on the MAC Address hardware learning system that Hash table and TCAM are shown, it is characterized in that, comprise search unit, TCAM list item judging unit, Hash table judging unit, Hash table comparing unit and hash-collision processing unit, wherein:
Described search unit, for: calculate cryptographic Hash with the Virtual Switch Instance belonging to message number with source MAC, and be indexed search Hash table with cryptographic Hash; The key assignments of organize search TCAM list item: the Virtual Switch Instance number of Virtual Switch Instance number belonging to message; MAC Address is the source MAC of message; List item full scale will puts 1, represents to search in the TCAM list item learnt;
Described TCAM list item judging unit, for: to judge in TCAM list item data effective marker whether set, if set, then compare virtual switch port in TCAM list item data and whether equal message and receive virtual switch port, if so, then do not upgrade list item; Otherwise upgrading virtual switch port in current TCAM list item data is message actual reception virtual switch port; If there is no set, produce Hash table and judge triggering signal, and be sent to Hash table judging unit;
Described Hash table judging unit, for: receive Hash table judge triggering signal time, to judge in Hash table the whether set of data effective marker, if there is no set, be stored in current hash table by the virtual switch port that Virtual Switch Instance belonging to message source MAC Address, message number and message receive, list item effective marker puts 1; If set, produce and compare triggering signal, and be sent to Hash table comparing unit;
Described Hash table comparing unit, for: receive compare triggering signal time, relatively in Hash table, whether Virtual Switch Instance number and MAC Address match with the Virtual Switch Instance belonging to message number and MAC Address, if coupling, then represent that current address has been in Hash table middle school, in more current Hash table, whether virtual switch port equals message actual reception virtual switch port, if equal, then terminates study; Otherwise the virtual forwarding port numbers upgraded in current hash table is message actual reception virtual port number, terminate study; If do not mated, produce hash-collision process triggering signal, and be sent to hash-collision processing unit;
Described hash-collision processing unit, for: when receiving hash-collision process triggering signal, the key assignments of organize search TCAM list item is to find the conflict of idle TCAM list item buffer memory: in key assignments, Virtual Switch Instance is number for 0, MAC Address is 0, list item is completely masked as 0, represents to search in idle TCAM list item; To judge in TCAM data effective marker whether set again, if set, represent and find first idle list item, MAC Address is cached in current idle TCAM list item: the Virtual Switch Instance number of key assignments extends this as Virtual Switch Instance number belonging to message, and mask puts 1, MAC Address extends this as the source MAC of message, mask puts 1, and list item full scale will puts 1, and mask puts 1, in data, virtual switch port extends this as message actual reception virtual switch port, terminates study; If there is no set, represent that TCAM memory does not have idle list item, abandon study;
Also comprise initialization unit, for: judge whether initial table entry index is greater than list item maximum, if so, then return exception; Otherwise judge whether initial table entry index value is positioned at hashed table index scope, if so, then initialization Hash table, directly with initialization index value location hash table, and by contents in table all clear 0; Otherwise, judge initial table entry index be whether TCAM last, if, then last TCAM list item of initialization, in key assignments, all fields are all initialized as 0, and mask is 0, the equal assignment of all fields in data is 0, represents that this list item is last list item of TCAM; Otherwise by list item full scale will clear 0 in key assignments, mask puts 1, represent that current entry initial condition is empty, all the other fields clear 0 in key assignments, mask clear 0, in data, list item effective marker puts 1, all the other fields clear 0, and represent that this list item is not last list item, initialization terminates;
Also comprise aged cell, for: judge whether aging table item index is greater than list item maximum, if so, then return exception; Otherwise judge whether aging table item index value is positioned at hashed table index scope, if so, then aging Hash table, directly with initialization index value location hash table, and by contents in table all clear 0; Otherwise, judge aging table item index be whether TCAM last, if so, then last is the list item of any key assignments of coupling to represent TCAM, terminates aging; Otherwise by list item full scale will clear 0 in key assignments, mask puts 1, all the other fields clear 0, and mask clear 0, is set to sky by entry status, and in data, list item effective marker puts 1, all the other fields clear 0, represent that this list item is not last list item, aging end.
5., as claimed in claim 4 based on the MAC Address hardware learning system that Hash table and TCAM are shown, it is characterized in that: described Hash table is stored in SRAM or DRAM.
6., as claimed in claim 4 based on the MAC Address hardware learning system that Hash table and TCAM are shown, it is characterized in that: described TCAM list item is stored in TCAM memory.
CN201310055657.3A 2013-02-21 2013-02-21 Media access control (MAC) address hardware learning method and system based on hash table and ternary content addressable memory (TCAM) table Active CN103117931B (en)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN201310055657.3A CN103117931B (en) 2013-02-21 2013-02-21 Media access control (MAC) address hardware learning method and system based on hash table and ternary content addressable memory (TCAM) table
PCT/CN2013/080000 WO2014127605A1 (en) 2013-02-21 2013-07-24 Mac address hardware learning method and system based on hash table and tcam table
MYPI2014703365A MY170382A (en) 2013-02-21 2013-07-24 Mac address hardware learning method and system based on hash table and tcam table
CL2015000917A CL2015000917A1 (en) 2013-02-21 2015-04-10 Mac address hardware learning method, which includes calculating hash key based on message id and mac origin, searching for key in ternary memory (tcam), determining if tcam data flag is set, comparing virtual switch port values , update the tcam virtual switch port, determine if the hash data flag is set, store the message's mac address, compare id and mac address; associated system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310055657.3A CN103117931B (en) 2013-02-21 2013-02-21 Media access control (MAC) address hardware learning method and system based on hash table and ternary content addressable memory (TCAM) table

Publications (2)

Publication Number Publication Date
CN103117931A CN103117931A (en) 2013-05-22
CN103117931B true CN103117931B (en) 2015-07-01

Family

ID=48416209

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310055657.3A Active CN103117931B (en) 2013-02-21 2013-02-21 Media access control (MAC) address hardware learning method and system based on hash table and ternary content addressable memory (TCAM) table

Country Status (4)

Country Link
CN (1) CN103117931B (en)
CL (1) CL2015000917A1 (en)
MY (1) MY170382A (en)
WO (1) WO2014127605A1 (en)

Families Citing this family (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103117931B (en) * 2013-02-21 2015-07-01 烽火通信科技股份有限公司 Media access control (MAC) address hardware learning method and system based on hash table and ternary content addressable memory (TCAM) table
CN104239337B (en) * 2013-06-19 2019-03-26 中兴通讯股份有限公司 Processing method and processing device of tabling look-up based on TCAM
CN103678553A (en) * 2013-12-06 2014-03-26 上海寰创通信科技股份有限公司 Wireless terminal database establishing method based on shared memory design
CN103731355B (en) * 2013-12-31 2017-01-25 迈普通信技术股份有限公司 Method and system for avoiding Hash collision during MAC address learning
CN105812264B (en) * 2016-03-15 2019-04-19 西安电子科技大学 The MAC address learning of multidiameter delay and the device and method of address search
CN107770076B (en) * 2016-08-23 2020-12-04 中兴通讯股份有限公司 Hash collision processing method and device and switching equipment
CN107332774B (en) * 2017-06-09 2019-12-03 烽火通信科技股份有限公司 A kind of method that MAC address learning is carried out based on software-hardware synergism in VPLS
CN108632148B (en) * 2017-12-29 2020-06-16 西安电子科技大学 Device and method for learning MAC address based on pre-reading mode
CN108307001B (en) * 2018-04-28 2021-07-27 深圳市风云实业有限公司 MAC address aging method and device and electronic equipment
CN109582598B (en) * 2018-12-13 2023-05-02 武汉中元华电软件有限公司 Preprocessing method for realizing efficient hash table searching based on external storage
CN112087389B (en) * 2019-06-14 2023-01-24 深圳市中兴微电子技术有限公司 Message matching table look-up method, system, storage medium and terminal
CN110674138B (en) * 2019-09-23 2024-03-08 苏州雄立科技有限公司 Message searching method and device
CN114268585B (en) * 2019-11-07 2024-01-23 苏州盛科通信股份有限公司 Three-layer route forwarding judging method based on TCAM
CN112003792B (en) * 2020-07-23 2022-04-15 烽火通信科技股份有限公司 Software and hardware cooperative message acceleration method and device
CN112118186B (en) * 2020-08-28 2022-11-01 深圳市风云实业有限公司 Exchange chip routing table entry storage method, forwarding method and configuration method
CN112181309A (en) * 2020-10-14 2021-01-05 上海德拓信息技术股份有限公司 Online capacity expansion method for mass object storage
CN112328593B (en) * 2020-10-21 2023-01-31 烽火通信科技股份有限公司 Method, equipment and system for carrying out batch configuration on address learning table
CN112269784A (en) * 2020-10-28 2021-01-26 中科驭数(北京)科技有限公司 Hash table structure based on hardware realization and inserting, inquiring and deleting method
CN112637072B (en) * 2020-12-23 2022-08-02 北京时代民芯科技有限公司 Fast parallel circuit and method for exchanging chip address storage and search
CN112866115B (en) * 2020-12-31 2023-04-07 杭州迪普科技股份有限公司 Method, device, electronic equipment and storage medium for realizing transparent serial connection
CN112667867B (en) * 2020-12-31 2022-05-10 北京卓讯科信技术有限公司 Matching conflict checking method and equipment based on TCAM (ternary content addressable memory) feature code
CN114764453A (en) * 2021-01-14 2022-07-19 武汉斗鱼网络科技有限公司 Data processing method and device and electronic equipment
CN113489649B (en) * 2021-06-29 2022-07-22 新华三信息安全技术有限公司 Table entry storage method and device
CN113709110B (en) * 2021-07-27 2023-07-21 深圳市风云实业有限公司 Intrusion detection system and method combining soft and hard
CN113779320B (en) * 2021-08-18 2024-02-27 北京计算机技术及应用研究所 Method for solving table entry storage address conflict
CN115733795A (en) * 2021-08-24 2023-03-03 苏州盛科通信股份有限公司 Message forwarding method, network forwarding equipment and computer storage medium
CN113726661B (en) * 2021-08-27 2022-10-18 西安微电子技术研究所 High-performance low-power-consumption router hash device and control method thereof
CN113765806B (en) * 2021-09-02 2022-09-02 烽火通信科技股份有限公司 MAC address learning method, device, equipment and readable storage medium
CN113904987B (en) * 2021-10-29 2022-11-15 西安微电子技术研究所 MAC address routing management controller, system and control method
CN114253979B (en) * 2021-12-23 2023-10-03 北京百度网讯科技有限公司 Message processing method and device and electronic equipment
CN115065662A (en) * 2022-06-13 2022-09-16 上海亿家芯集成电路设计有限公司 Method and system for processing MAC address hash collision
CN115297059B (en) * 2022-07-18 2023-11-28 浙江大学 Transport layer load balancing system based on P4
CN117472838B (en) * 2023-12-28 2024-03-15 苏州元脑智能科技有限公司 High-speed serial computer expansion bus equipment identification method, device and related equipment

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101072178A (en) * 2007-06-22 2007-11-14 中兴通讯股份有限公司 Switching system routing table management method
CN101247337A (en) * 2008-02-18 2008-08-20 华为技术有限公司 Packet forwarding method and equipment
CN102880724A (en) * 2012-10-23 2013-01-16 盛科网络(苏州)有限公司 Method and system for processing Hash collision

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7941559B2 (en) * 2002-04-23 2011-05-10 Tellabs Bedford, Inc. Media access control address translation for a fiber to the home system
CN1319325C (en) * 2003-04-16 2007-05-30 华为技术有限公司 Method of finding route table item using ltsh chain table
CN100481820C (en) * 2006-12-18 2009-04-22 杭州华三通信技术有限公司 Searching method for TCAM route table and searching device for TCAM route table
WO2011091581A1 (en) * 2010-01-26 2011-08-04 华为技术有限公司 Method and device for storing and searching keyword
CN101841473B (en) * 2010-04-09 2011-12-28 北京星网锐捷网络技术有限公司 Method and apparatus for updating MAC (Media Access Control) address table
CN103117931B (en) * 2013-02-21 2015-07-01 烽火通信科技股份有限公司 Media access control (MAC) address hardware learning method and system based on hash table and ternary content addressable memory (TCAM) table

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101072178A (en) * 2007-06-22 2007-11-14 中兴通讯股份有限公司 Switching system routing table management method
CN101247337A (en) * 2008-02-18 2008-08-20 华为技术有限公司 Packet forwarding method and equipment
CN102880724A (en) * 2012-10-23 2013-01-16 盛科网络(苏州)有限公司 Method and system for processing Hash collision

Also Published As

Publication number Publication date
MY170382A (en) 2019-07-27
CL2015000917A1 (en) 2015-07-17
WO2014127605A1 (en) 2014-08-28
CN103117931A (en) 2013-05-22

Similar Documents

Publication Publication Date Title
CN103117931B (en) Media access control (MAC) address hardware learning method and system based on hash table and ternary content addressable memory (TCAM) table
US11102120B2 (en) Storing keys with variable sizes in a multi-bank database
US10623311B2 (en) Technologies for distributed routing table lookup
US10608866B2 (en) Forwarding Ethernet packets
US8792497B2 (en) Method and apparatus for performing link aggregation
US9565138B2 (en) Rule-based network traffic interception and distribution scheme
Bando et al. FlashTrie: beyond 100-Gb/s IP route lookup using hash-based prefix-compressed trie
JP5518135B2 (en) Extensible multicast forwarding method and apparatus for data center
US10621080B2 (en) Pipelined hash table with reduced collisions
US9716592B1 (en) Traffic distribution over multiple paths in a network while maintaining flow affinity
CN106341338B (en) A kind of retransmission method and device of message
CN102857414A (en) Forwarding table writing method and device and message forwarding method and device
CN101267331A (en) A search method and device for multicast forward table
CN113381931B (en) Method and device for supporting MLAG (Multi-level Access gateway) dual-active access in VXLAN (virtual extensible local area network)
CN109743414B (en) Method for improving address translation availability using redundant connections and computer readable storage medium
US7403526B1 (en) Partitioning and filtering a search space of particular use for determining a longest prefix match thereon
CN106789859B (en) Message matching method and device
CN109639579A (en) The processing method and processing device of multicast message, storage medium, processor
CN103118149A (en) Communication control method for servers of same lessee and network device
CN102291472A (en) Network address lookup method and device
WO2016106506A1 (en) Routing method and device
EP3198808B1 (en) Local packet switching at a satellite device
US11146476B2 (en) MSDC scaling through on-demand path update
CN106453091B (en) The equivalent route management method and device of router Forwarding plane
US11018978B1 (en) Configurable hash-based lookup in network devices

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant