CN104982014A - Method and apparatus for forwarding heterogeneous address route - Google Patents
Method and apparatus for forwarding heterogeneous address route Download PDFInfo
- Publication number
- CN104982014A CN104982014A CN201380007368.4A CN201380007368A CN104982014A CN 104982014 A CN104982014 A CN 104982014A CN 201380007368 A CN201380007368 A CN 201380007368A CN 104982014 A CN104982014 A CN 104982014A
- Authority
- CN
- China
- Prior art keywords
- item
- path
- value
- address
- weights
- 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.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/64—Hybrid switching systems
- H04L12/6418—Hybrid transport
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
The present invention relates to a method for forwarding heterogeneous address route, and the method includes the following steps: the forwarded addresses are preliminarily selected through a bloom filter, and thus a corresponding preliminary selection item in each hash function segment is obtained; an abstract item in a corresponding abstract vector table is searched, according to the obtained corresponding preliminary selection item in each hash function segment; the value of each preliminary selection item and the value of the corresponding abstract item are respectively added to obtain several weight values indicating different searching paths; the several obtained weight values are compared, and the minimum is selected as the searching item of the forwarding path; the forwarding table is accessed to obtain the forwarding path according to the corresponding location in the forwarding table corresponding to the abstract item of the selected searching item. The present invention also relates to an apparatus to realize the method. The following beneficial effect can be realized by implementing the forwarding method and apparatus for heterogeneous address route: unnecessary access request for the out-chip memory is decreased, and the space efficiency and system efficiency of the memory is increased.
Description
The retransmission method and device being route for isomery address
Technical field
The present invention relates to the storage of data and lookup, more specifically to a kind of retransmission method and device being route for isomery address.
Background technology
Traditional IP-based routing framework is accessed for distance host and designed, with the continuous expansion of internet scale and continuing to bring out for new network business, what IP network was provided obviously can not meet all these demands towards the route of main frame and best effort, therefore solve these problems there has been proposed the new routing addressing mechanism towards identity, content, service.These new routing addressing mechanism do not use IP to identify its routing object, but use other characteristics, such as new name space, to identify destination address;The address of such as one section video can be made up of title, time, author, type etc., user need not know that this section of video is stored on which of network server, it is only necessary to which to network requirement, this new video labeling address can just directly find it;And for example, the address of an electronic document can the digital signature comprising author and watermark ensure its integrality and authenticity, user can just access it in a network by this new address.In general, by it is this be not that the address being made up of IP address is referred to as isomery address.
These Novel roads dispose the route for causing following router to be required to handle the isomery address of magnanimity by the introducing of addressing mechanism along with IPv6, and the continuous dilatation speedup of network make it that carrying out forwarding with linear speed becomes more challenging.The core of forwarding capability is table lookup operation, i.e., forward table is tabled look-up, and due to the growth and the addition of new address of network size, these searching works will also face increasing forward table.Up to 340k+ record is needed to safeguard in such as current typical IPv4 core routers but also has constantly increased.With 32 bits I P v4 addresses to the IPv6 addresses of 128 bits migration, and the routing architecture of a name is taken for each file, music, video as NDN is this, the demand of the appearance of other the new address systems also presented in flat namespaces form, speed and scale will be with time growth.
Existing surface speed forwarding is on hardware usually using three-state content addressing memory(TCAM, Ternary Content Addres sable Memory) .TCAM has strict line due to its lookup
Property speed, thus applied in business router it is the most extensive.But TCAM is due to the problem of cost is high, power consumption is big, record updates complicated, it is clear that can not meet the above-mentioned lookup demand to magnanimity isomery address.And the software of existing surface speed forwarding is generally based on search tree Tr ie.The tree-like data structure of search tree is relatively specific for the address of structuring as IP in design, and it is then unsuitable for isomery address.Other search tree also has the shortcomings of space consuming is big, speed is slow.
The content of the invention
The technical problem to be solved in the present invention is, for prior art it is above-mentioned be unsuitable for that isomery address, space consuming be larger, there is provided a kind of suitable isomery address, space consuming be smaller, the speed retransmission method and device being route for isomery address for slow defect.
The technical solution adopted for the present invention to solve the technical problems is:A kind of retransmission method being route for isomery address of construction, comprises the following steps:
A primary election) is carried out by Bloom filter to the address of forwarding, the Bloom filter is divided into multiple hash functions sections;The address corresponding just option in each hash function section respectively is obtained after primary election;
B) summary in corresponding summary vector table is searched according to corresponding just option in obtained each hash function section respectively;
C) be separately summed it is each go out option in value summary item corresponding with its in value, obtain multiple weights for representing different accessed paths;Compare obtained multiple weights, select the minimum lookup as forward-path of its value;
D) according to relevant position in the forward table searched in item corresponding to summary item of selection, the forward table is accessed, its forward-path is obtained.
Further, the summary vector table includes multiple summary items, and each summary item corresponds respectively to described its numbering identical of each hash function Duan Zhongyu just option;Also correspond respectively in the forward table one of summary item.
Further, the forward table is built using hash function;The hash function equal length of the hash function length of each hash function section, the length of the summary vector table and the forward table.
Further, the step B) further comprise:
Bl) value obtained in first option is added with the value in corresponding summary item one by one, multiple weights are obtained;
B2) compare the size of these weights, select the accessed path wherein represented by minimum value as the lookup of forward-path.
Further, the step B) in also comprise the following steps:
B3) if minimum value is more than one in the obtained weights, select wherein to lean on the lookup into the accessed path represented by the minimum value of Hash gauge outfit as forward-path.
Further, also comprise the following steps:
E) when selecting data storage path, if in step C) in be stored with the corresponding forward-path of obtained lookup data, then by changing the numerical value in the vectorial list item of the summary so that the weights minterm changes, so that the lookup change of its forward-path, stores data in diverse location.
Further, also comprise the following steps:
F) when selecting data storage path, if all of by the data that have been stored with the corresponding forward-path of lookup corresponding to first option, then the data stored are moved by changing the numerical value in the summary item.
Further, the Bloom filter and the summary vector table for primary election are arranged on router chip, and the forward table is arranged on the memory outside the router chip.
The invention further relates to a kind of device for realizing the above method, including:
The grand filter element of cloth:Primary election is carried out by Bloom filter for the address to forwarding, the Bloom filter is divided into multiple hash function sections;The address corresponding just option in each hash function section respectively is obtained after primary election;
Summary item acquisition unit:For according to corresponding just option in obtained each hash function section, searching the summary in corresponding summary vector table respectively;
Search item selecting unit:For be separately summed it is each go out option in value summary item corresponding with its in value, obtain multiple weights for representing different accessed paths;Compare obtained multiple weights, select the minimum lookup as forward-path of its value;
Forward table reading unit:For relevant position in the forward table searched in item corresponding to summary item according to selection, the forward table is accessed, its forward-path is obtained.
Further, the lookup item selecting unit further comprises:
Weights obtain module:For being one by one added the value obtained in first option with the value in corresponding summary item, multiple weights are obtained;
Search item and obtain module:Size for comparing these weights, selects the accessed path wherein represented by minimum value as the lookup of forward-path;If minimum value is more than one in the obtained weights, select wherein to lean on the lookup into the accessed path represented by the minimum value of Hash gauge outfit as forward-path.Really:Due to being provided with summary vector table between the grand wave filter of cloth of forward table and progress preliminary screening, and select or point to the item in forward table by the value progress computing for vector table of making a summary, therefore, its routing forwarding works independent of any kind of address structure information, it can be operated in structureless address space, can also be provided for structured address on forwarding capability, and performance does not have any difference;Calculated by primary dcreening operation mechanism and introducing summary vector table, reduce the unnecessary visiting demand to being stored outside piece, improve system effectiveness.
Brief description of the drawings
Fig. 1 is the flow chart of forward-path acquirement in the retransmission method that the present invention is route for isomery address and device embodiment;
Fig. 2 is the structural representation of summary vector table in the embodiment;
Fig. 3 is lookup item acquirement flow chart in the embodiment;
Fig. 4 is the apparatus structure schematic diagram in the embodiment.
Embodiment
Below in conjunction with accompanying drawing, embodiments of the present invention is further illustrated.
As shown in Fig. 1, in the retransmission method and device embodiment of the isomery address route of the present invention, its retransmission method comprises the following steps:
Step S11 carries out primary election by Bloom filter, obtains just option:In this step, need to
The address forwarded carries out primary dcreening operation.Due in the present embodiment, using Bloom filter(Bloom f i l ter) preliminary screening is carried out to address, and Bloom filter is made up of multistage in the present embodiment(It is also assumed that being that parallel multiple segment filters device constitutes a Bloom filter), every section using a Hash(Hash) table is screened to address;After every section of Hash table is screened to address, the address can be obtained for the item in corresponding to each Hash table, Hash table, this is exactly option at the beginning of one.Because Bloom filter has multistage, and every section can obtain first option as one, so, in the present embodiment, multiple just options can be obtained, the number of the first option and the hop count of Bloom filter are identicals.
Step S12 obtains its corresponding summary item according to above-mentioned each just option:In this step, according to just option obtained above, its item corresponding, in summary vector table, that is, item of making a summary is respectively obtained.It is worth mentioning that, in the present embodiment, the setting of summary vector table causes there are 4 in each vector table, and a Bloom filter includes two sections, and every section respectively include 4, then the 2nd of correspond in Bloom filter in the 1st of 1 of first paragraph and second segment, summary vector table the 2nd of the 1st in summary vector table correspond to first paragraph in Bloom filter 2 and second segment, by that analogy(Refer to Fig. 2 declaratives).In this step, exactly according to the first option obtained in above-mentioned Bloom filter, each just corresponding summary item of option is found.
Step S13 makes first option be added with summary item respectively, obtains its weights;Compare each weights, the minimum lookup as forward-path of selection wherein weights:In this step, the value in the corresponding summary item of the value in just option obtained above is added one by one, obtains multiple weights.In the present embodiment, first option is actually the entrance for searching forwarding address, by these first options, can obtain a specific position in look-up table, the content of particular location storage is exactly forwarding address.And just option is added obtained weights with the value of summary item, the weight of the first option in this selection is represented, the entrance of different weights is selected according to certain rule, you can to obtain different forwarding address.It is noted that in the present embodiment, the implication of forwarding includes the storage and lookup of data, that is to say, that different entrances will cause to write data into diverse location or read the data of diverse location.As long as data storage selects storage address according to certain regulation, as long as when reading data according to same regulation,
Correct data can be obtained.In addition, also needing to the different entrances of expression that will be obtained in this step in this step(Search the item in item or look-up table)Weights be compared, find and select its weights minimum one as searching item.
Step S 14 accesses the item in the corresponding forward table of summary item in selection path, obtains forward-path:In this step, the item searched in the corresponding look-up table of item of selection is accessed, forward-path is obtained.In the present embodiment, the item in above-mentioned summary vector table is with the item in above-mentioned forward table --- it is corresponding.After forward-path is obtained, remaining operation is exactly, by data storage or reading, to realize forwarding according to the forward-path.
Fig. 2 is referred to, in fig. 2 it is shown that realizing the summary vector table structure and its grand wave filter of cloth and the relation schematic diagram of forward table with primary election of above-mentioned steps.Due to solve the through street towards magnanimity isomery address in the present embodiment by forwarding problems, its problems faced be forwarding address search space is huge, architectural feature isomery(The longest prefix match type of IP like is not necessarily, can be flat either other structures), and forward table needs receiving magnanimity record etc..In order to realize the purpose, under conditions of high speed storing space is limited on Current hardware piece, using the double-layer structure stored on piece and outside piece, huge forward table is stored in the Large Copacity outside piece but the slow memory space of access speed.The forward table uses Hash table structures, and lookup speed is fast and need not utilize the architectural feature of any address.Bloom filter is used on piece(Bloom f i l ter) all forwarding requests of pre-sifted so that the address only recorded in forward table can just access forward table, so that the access to being stored outside piece at a slow speed is saved, while improving processing speed.In general, common Hash tables are in order to reduce the probability of conflict, and the space efficiency of storage is not general high.Improving the storage efficiency of Hash tables needs to pay other costs, such as improves storage efficiency by checking multiple list item positions in each search using the Cuckoo Hash of multiple Hash functions.But it improves when searching to the read access number of times of Hash tables, it is clear that the forwarding under this programme double-layer structure can be influenceed to table look-up efficiency.Therefore, in the present embodiment, increasing a data structure on piece, vector table of referred to as making a summary helps to position by the way that the summary info of forward table outside piece is stored in this structure, so as to no longer need to conduct interviews to multiple list item positions.In addition, always needing to carry out one group of Hash calculating, the forwarding table search that we also directly apply to these Hash result of calculations outside piece, so as to save more spaces and calculation cost in Bloom f i l ter operation.
So, different weights are assigned by the result to primary election, so as to find or select correct item in primary dcreening operation result, reduces the access times to forward table.
Fig. 2 includes the Bloom filter B (Bloom f i l ter) of fragmentation count on a piece, forward table Τ based on Hash under one piece, there is the summary being stored on a piece vector table S (summary vector) between.Each groove in summary vector table(Summary item)It is all corresponding with the counter in each Hash function segments in Bloom f i l ter.If the ter of Bloom f i 1 have used each groove in k Hash function, summary vector table just corresponding with k groove in Bloom f i l ter(These grooves have identical position or numbering in every section).Such as first groove in S just with first groove of Hash functions 1, first groove of Hash functions 2, until Hash functions k first groove it is corresponding.This k groove will determine to search particular location of the object outside piece in forward table along with the numerical value in that corresponding groove in summary vector, so that it is any once search summary vector table with the help of at most only need to access piece outside forward table once, check all possible position without spending.
For each inquiry not over Bloom f i l ter, it is clear that It is not necessary to go to access the forward table outside piece, because the result of the inquiry will not be found in forward table.Router can be directly entered default route and generate and addition mechanism, such as broadcasts lookup mechanism, so as to avoid the access being not necessarily to being stored outside piece.
If inquiry request has passed through Bloom f i l ter primary dcreening operation, it is necessary to access the outer forward table of piece to determine specific forward-path.K Hash calculating has been carried out in Bloom f i l ter test first, if inserted before when this recorded forward table if this k position is just only needed to this k position of consideration just if the potential option of storage record, when lookup., it is necessary to which the information for reading this k position just can determine that the record is actually to be stored in that position on earth in the case of without summary vector table;And with the help of summary vector table, a weights can be calculated to this k position, by storing the record to the sequence of these weights to determine only one position.The counting in summary vector in corresponding groove, altogether k+1 counting are added in counting of the calculating of this weights based on each position candidate in k Hash function in corresponding groove.For example sum can be counted as the weights of the position using this k+1, then compare the weights of k position, take one of wherein minimum to deposit the record.If minimum weights more than one, just choose near that position of Hash gauge outfits
Put to deposit.For example in fig. 2, x3 is positioned at second position in Hash table.
One is stored due to the k hash function k position candidate of offer in Bloom f i l ter, it is possible to use the forward table to set up a Lothrus apterus of this k hash function.Such as, if the position above calculated is taken by other records, then it is also conceivable to whether other k-1 position be idle;If all position candidates are occupied, then it is contemplated that the record of some occupancy is removed, also there is k position candidate to deposit because that records oneself, wherein may also have part candidate unoccupied.By the record moved repeatedly when record is inserted in Hash tables can find all records can Lothrus apterus storage situation, and due to can moving recording this advantage, the space efficiency of the Lothrus apterus Hash tables eventually formed is just more much higher than traditional Hash tables.
Certainly, because the position of record storage is obtained by the calculating of foregoing weights, if selection moving recording, must just change the result of calculation of weights so that the corresponding weights in that position finally selected are minimum.Because the counting of k Hash function in Bloom f i l ter was Bloom f i l ter built-in variable originally, it is directly used in its judgement to input request, if the correctness of Bloom f i l ter pre-sifted will be had influence on by changing these countings, so the sequence for changing weights needs the value of the summary vector by adjusting introducing to complete.Such as we can be increased by the counting for the groove for current weight being less than the corresponding summary vector in all positions of adjustment position weights, to cause the weights of adjustment position to become minimum.Due to counting the calculating for the position for being possibly used for multiple records in summary vector, so needing to ensure not interfering with other calculating without the position of the record of adjustment during the adjustment of these countings.
In the present embodiment, as shown in figure 3, the method for searching item acquirement is as follows:
Step S31 makes first option be added with summary item respectively, obtains multiple lookup item weights:In this step, the value of the value being separately summed in obtained first option and the corresponding item of making a summary of the first option, obtains multiple lookup item weights.For example, in fig. 2, x3 corresponds to the 4th of the 1st section in Bloom filter after primary dcreening operation, respectively(Its value for 1), the 3rd of the 2nd section(Its value is the 2nd 2) with the 3rd section(1) its value is;Then, value of the 1st section of the value of the 4th plus summary vector table the 4th(Its value is 3 2), to obtain its weights;Value of 2nd section of the value of the 3rd plus summary vector table the 3rd(Its value is 6 4), to obtain its weights;Value of 3rd section of the value of the 2nd plus summary vector table the 2nd(Its value is 3 2), to obtain its weights;Therefore in this step, 3 are obtained
Individual weights, are 3,6 and 3 respectively;
Where the more multiple routine weight values of step S32, selection minimum value item is searched as forward-path:In this step, compare the weights obtained in above-mentioned steps, select minimum one of its value as forward-path and search item.In general, if only one of which is minimum, it is selected, next step is no longer performed.But, apparently not such case in the above example in above-mentioned example, has two 3, it is therefore desirable to perform next step.
If step S33 minimum values are more than one, selection is used as forward-path lookup item near one of gauge outfit position:In the above example, two weights are the 2nd and the 4th respectively for the summary in 3 summary vector table, it is clear that the 2nd ratio the 4th is more leaned on into gauge outfit, so, the 2nd forward-path as x3 in selection forward table refers to Fig. 3.
For generally, the present embodiment is implemented using on piece and outer two parts of piece.Part can be high speed network processor on piece(Or router chip) sram memory that is internally integrated, piece outer portion can be the DRAM memory of separation or the SSD solid storage devices of high speed.
In the present embodiment, Bloom f i l ter and summary vector table are stored on piece, actual forward table is stored in outside piece in the form of Hash tables, the raising of space efficiency under the premise of Lothrus apterus is realized by using multiple Hash functions, the specific deposit position of each record is determined by foregoing weight calculation method.
Bloom f i l ter design uses segmental structure on piece, one Hash function of each section of correspondence, its length is identical with the outer Hash tables of piece, the result of calculation of so each Hash functions can be mapped on the outer Hash tables of complete piece, in other words a groove of the position of the outer forward table of a piece with each function in this k Hash function(Or item)It is corresponding.Vectorial length of making a summary is also same.
For the inquiry that each is tested by Bloom f i l ter set members, corresponding to the groove of k summary vector of k counter test(Or item)It can be checked.Lookup algorithm is as follows:
In all grooves(Or item)In, possess minimum value(T ies broken toward the head of the vec tor) win, it indexes to be used directly in the outer Hash tables of piece and positioned.For example in fig. 2, x3 is positioned at second position in Hash tables.
Specific false code is as follows:
9:In the false code that eofl if are related in the present embodiment, y represents the address to be searched, and hi () represents i-th of the hash function used in Bloom filter;Indexy then represents y lookup;S [] represents summary vector table;T [] expression forwarding route tables, and (16 (^ () the expression selections of 8,1^1,168 1(In the identical person of weights)Index reckling(Namely in the present embodiment near gauge outfit person).Substantially, conflict only can just occur when inserting new record, after conflict is solved in the insertion stage, searching, delete or any operation afterwards all without conflicting again.When insertion is to carry out one by one, conflict only occurs in the record to be inserted and taken before between the record that this calculates position.In order to solve such conflict, at least one of which needs to be removed.Value minimum in increase summary vector is only needed to as can be seen that a record is removed from current location from false code above, until it is no longer minimum.The record removed is possible to cause new conflict in new position, need to only continue using to the last all record of this algorithm that all there is no conflict.The specific function ResolveCollision (x, y) for eliminating conflict false code is as follows:
!1: end it
12:Store i to the new localion are inserted with deleting also very cylinder list.Because Bloom filter countings have been separated with Hash tables outside piece on piece, therefore independently execution insertion can be performed with deleting without influence each other.The algorithm pseudo code of insertion is as follows:
!2: t| to I l« te ;¾]
13:End if, it can be seen that, Bloom Filter first more new record y, then make a summary vector can record this insertion, the numeral for recording corresponding k groove plus one.When more record is added, each slot value for vector of making a summary will be different, then when inserting new record, as long as the groove that relatively more corresponding alternative slot value most finds minimum value is stored.If insertion generation collision, then eliminating the method or function of conflict will be called to solve conflict.
Because insertion can cause each slot value to change, so one have stored in some groove data when being retrieved SmallestlndexOf (min (S [hi (y)]) (and the expression formula represent four operation nestings, definition see before)It may change.So, we just by this record y dump to current SmallestlndexOf (in min (S [hi (y)]) corresponding groove with ensure inquiry be smoothed out.The pseudo-code of deletion is as follows:
3; Re ove i m the Bloom. B
The blunt cylinder list of algorithm 4 of deletion, it is only necessary to inquire corresponding record, and by the record deletion in Bloom Filter and inquiry table.Summary vector is without changing.
It is seen that, with continuing for insertion process, the slot value in summary vector can gradually increase.This is good for load balancing, because like this (above solving the method that the false code of conflict is represented by ResolveCollision (x, y))Bring numeral increase can gradually become insignificant, and by insert band come slot value increase tended in statistical significance hook distribution.But safeguard that big slot value then requires the bigger memory space of each slot value to store increasingly increased numerical value.And what such result was clearly disadvantageous for memory space on originally nervous piece.In order to solve this problem, two measures are taken in the present embodiment.First, distributed summary vector techniques are employed, the value of counter is no longer added in summary vector, but directly reads Bloom Filter in the calculation.Only those data that can not be directly read, such as ResolveCollision (x, y), the numerical value of generation, just can be directly added in summary vector.On the other hand, the mode of standardization is taken, as long as the minimum value in summary vector table is more than 0, each slot value of summary vector will be subtracted a minimum value by we so that slot value reduces and remains the difference between former slot value comprehensively.
As shown in figure 4, in the present embodiment, further relating to a kind of device for realizing the above method, including the grand filter element 41 of cloth, summary item acquisition unit 42, lookup item selecting unit 43 and forward table reading unit 44.Wherein, the grand filter element 41 of cloth is used to carry out primary election by Bloom filter to the address of forwarding, and the Bloom filter is divided into multiple hash function sections;The address corresponding just option in each hash function section respectively is obtained after primary election;Summary item acquisition unit 42 is used for respectively according to corresponding just option in obtained each hash function section, searches in corresponding summary vector table
Summary item;Search item selecting unit 43 be used to being separately summed it is each go out option in value summary item corresponding with its in value, obtain the weights of the different accessed paths of multiple expressions;Compare obtained multiple weights, select the minimum lookup as forward-path of its value;Forward table reading unit 44 is used for relevant position in the forward table searched in item corresponding to summary item according to selection, accesses the forward table, obtains its forward-path.
And search item selecting unit 43 and further comprise:Weights, which obtain module 431, to be used to one by one be added the value obtained in first option with the value in corresponding summary item, obtains multiple weights;Search item and obtain the size that module 432 is used to compare these weights, select the accessed path wherein represented by minimum value as the lookup of forward-path;If minimum value is more than one in the obtained weights, select wherein to lean on the lookup into the accessed path represented by the minimum value of Hash gauge outfit as forward-path.But therefore it can not be interpreted as the limitation to the scope of the claims of the present invention.It should be pointed out that for the person of ordinary skill of the art, without departing from the inventive concept of the premise, various modifications and improvements can be made, these belong to protection scope of the present invention.Therefore, the protection domain of patent of the present invention should be determined by the appended claims.
Claims (1)
- Claims1st, a kind of retransmission method being route for isomery address, it is characterised in that comprise the following steps:A primary election) is carried out by Bloom filter to the address of forwarding, the Bloom filter is divided into multiple hash functions sections;The address corresponding just option in each hash function section respectively is obtained after primary election;B) summary in corresponding summary vector table is searched according to corresponding just option in obtained each hash function section respectively;C the value in value summary item corresponding with its in each just option) is separately summed, multiple weights for representing different accessed paths are obtained;Compare obtained multiple weights, select the minimum lookup as forward-path of its value;D) according to relevant position in the forward table searched corresponding to item of selection, the forward table is accessed, its forward-path is obtained.2nd, the retransmission method according to claim 1 being route for isomery address, it is characterised in that the summary vector table includes multiple summary items, each summary item corresponds respectively to described its numbering identical of each hash function Duan Zhongyu just option;Also correspond respectively in the forward table one of summary item.3rd, the retransmission method according to claim 2 being route for isomery address, it is characterised in that the forward table is built using hash function;The hash function equal length of the hash function length of each hash function section, the length of the summary vector table and the forward table.4th, the retransmission method according to claim 3 being route for isomery address, it is characterised in that the step B) further comprise:B1) value obtained in first option is added with the value in corresponding summary item one by one, multiple weights are obtained;B2) compare the size of these weights, select the accessed path wherein represented by minimum value as the lookup of forward-path.5th, it is according to claim 4 for isomery address route retransmission method, it is characterised in that the step B) in also comprise the following steps: B3) if minimum value is more than one in the obtained weights, select wherein to lean on the lookup into the accessed path represented by the minimum value of Hash gauge outfit as forward-path.6th, the retransmission method according to claim 5 being route for isomery address, it is characterised in that also comprise the following steps:E) when selecting data storage path, if in step C) in be stored with the corresponding forward-path of obtained lookup data, then by changing the numerical value in the vectorial list item of the summary so that the weights minterm changes, so that the lookup change of its forward-path, stores data in diverse location.7th, the retransmission method according to claim 5 being route for isomery address, it is characterised in that also comprise the following steps:F) when selecting data storage path, if all of by the data that have been stored with the corresponding forward-path of lookup corresponding to first option, then the data stored are moved by changing the numerical value in the summary item.8th, it is used for the retransmission method that isomery address is route according to claim 1-7 any one, it is characterized in that, the Bloom filter and the summary vector table for primary election are arranged on router chip, and the forward table is arranged on the memory outside the router chip.9th, a kind of device for realizing method as claimed in claim 1, it is characterised in that including:The grand filter element of cloth:Primary election is carried out by Bloom filter for the address to forwarding, the Bloom filter is divided into multiple hash function sections;The address corresponding just option in each hash function section respectively is obtained after primary election;Summary item acquisition unit:For according to corresponding just option in obtained each hash function section, searching the summary in corresponding summary vector table respectively;Search item selecting unit:For be separately summed it is each go out option in value summary item corresponding with its in value, obtain multiple weights for representing different accessed paths;Compare obtained multiple weights, select the minimum lookup as forward-path of its value;Forward table reading unit:For relevant position in the forward table searched in item corresponding to summary item according to selection, the forward table is accessed, its forward-path is obtained. 10th, device according to claim 9, it is characterised in that the lookup selecting unit further comprises:Weights obtain module:For being one by one added the value obtained in first option with the value in corresponding summary item, multiple weights are obtained;Search item and obtain module:Size for comparing these weights, selects the accessed path wherein represented by minimum value as the lookup of forward-path;If minimum value is more than one in the obtained weights, select wherein to lean on the lookup into the accessed path represented by the minimum value of Hash gauge outfit as forward-path.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2013/088595 WO2015081524A1 (en) | 2013-12-05 | 2013-12-05 | Method and apparatus for forwarding heterogeneous address route |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104982014A true CN104982014A (en) | 2015-10-14 |
Family
ID=53272749
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201380007368.4A Pending CN104982014A (en) | 2013-12-05 | 2013-12-05 | Method and apparatus for forwarding heterogeneous address route |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN104982014A (en) |
WO (1) | WO2015081524A1 (en) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102333036A (en) * | 2011-10-17 | 2012-01-25 | 中兴通讯股份有限公司 | Method and system for realizing high-speed routing lookup |
US8224738B2 (en) * | 2005-08-31 | 2012-07-17 | Credit Market Analysis, Ltd. | Methods, software, and systems for over-the-counter trading |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7602785B2 (en) * | 2004-02-09 | 2009-10-13 | Washington University | Method and system for performing longest prefix matching for network address lookup using bloom filters |
CN102271087B (en) * | 2011-07-27 | 2017-09-29 | 中兴通讯股份有限公司 | A kind of method for searching route and device |
CN102833845B (en) * | 2012-08-14 | 2015-12-02 | 北京华胜天成信息技术发展有限公司 | A kind of heterogeneous communication system and method |
-
2013
- 2013-12-05 WO PCT/CN2013/088595 patent/WO2015081524A1/en active Application Filing
- 2013-12-05 CN CN201380007368.4A patent/CN104982014A/en active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8224738B2 (en) * | 2005-08-31 | 2012-07-17 | Credit Market Analysis, Ltd. | Methods, software, and systems for over-the-counter trading |
CN102333036A (en) * | 2011-10-17 | 2012-01-25 | 中兴通讯股份有限公司 | Method and system for realizing high-speed routing lookup |
Non-Patent Citations (1)
Title |
---|
李大刚: "Optimized Hash Lookup for Bloom Filter Based Packet Routing", 《IEEE XPLORE》 * |
Also Published As
Publication number | Publication date |
---|---|
WO2015081524A1 (en) | 2015-06-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Li et al. | Packet forwarding in named data networking requirements and survey of solutions | |
US8325721B2 (en) | Method for selecting hash function, method for storing and searching routing table and devices thereof | |
US9269411B2 (en) | Organizing data in a hybrid memory for search operations | |
US7069268B1 (en) | System and method for identifying data using parallel hashing | |
US6691124B2 (en) | Compact data structures for pipelined message forwarding lookups | |
KR20190111124A (en) | KVS Tree | |
KR20190117001A (en) | Merge Tree Modifications for Maintenance Operations | |
CN112347377B (en) | IP address field searching method, service scheduling method, device and electronic equipment | |
US7873041B2 (en) | Method and apparatus for searching forwarding table | |
CN102971732A (en) | System architecture for integrated hierarchical query processing for key/value stores | |
CN108287840A (en) | A kind of data storage and query method based on matrix Hash | |
US20100228914A1 (en) | Data caching system and method for implementing large capacity cache | |
KR101331018B1 (en) | Method for classifying packet and apparatus thereof | |
Dai et al. | BFAST: Unified and scalable index for NDN forwarding architecture | |
US20140358886A1 (en) | Internal search engines architecture | |
CN104915148A (en) | System and method for efficient content caching in a streaming storage | |
US7676457B2 (en) | Automatic index based query optimization | |
Huang et al. | A multi-partitioning approach to building fast and accurate counting bloom filters | |
CN102378407B (en) | Object name resolution system and method in internet of things | |
CN110096458B (en) | Named data network content storage pool data retrieval method based on neural network | |
US20080034115A1 (en) | Apparatus for handling hash collisions of hash searching and method using the same | |
WO2016184069A1 (en) | Route lookup method and device | |
CN110109616B (en) | Named data network content storage pool data deletion method based on neural network | |
KR101587756B1 (en) | Apparatus and method for searching string data using bloom filter pre-searching | |
Chang et al. | Dynamic segment trees for ranges and prefixes |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20151014 |
|
RJ01 | Rejection of invention patent application after publication |