CN100568878C - A kind of routing table converging device and method thereof - Google Patents

A kind of routing table converging device and method thereof Download PDF

Info

Publication number
CN100568878C
CN100568878C CNB2006100894902A CN200610089490A CN100568878C CN 100568878 C CN100568878 C CN 100568878C CN B2006100894902 A CNB2006100894902 A CN B2006100894902A CN 200610089490 A CN200610089490 A CN 200610089490A CN 100568878 C CN100568878 C CN 100568878C
Authority
CN
China
Prior art keywords
routing
polymerization
index
polymerizable
module
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
CNB2006100894902A
Other languages
Chinese (zh)
Other versions
CN101098335A (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.)
ZTE Corp
Original Assignee
ZTE Corp
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 ZTE Corp filed Critical ZTE Corp
Priority to CNB2006100894902A priority Critical patent/CN100568878C/en
Publication of CN101098335A publication Critical patent/CN101098335A/en
Application granted granted Critical
Publication of CN100568878C publication Critical patent/CN100568878C/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

The invention discloses a kind of routing table converging device and method thereof, this device comprises: interface module, polymerization routing module, polymerization routing module control, not polymerizable routing module, not polymerizable routing module control and routing index module; Interface module receives a routing iinformation and this routing iinformation is classified, transfer to the routing index module and in the routing index table, search the index of route correspondence, polymerization routing module, polymerization routing module control are revised the polymerization routing table, and are returned the polymerization routing index to the routing index table according to index, routing iinformation; Not the polymerizable routing module, the polymerizable routing module control is not revised not polymerizable routing table according to index, routing iinformation, and returns not the polymerizable routing index to the routing index table.The present invention has reduced the routing table occupation space by polymerisable most contents in the routing iinformation is represented with a spot of polymerization routing table, has improved the route quantity of storing in the identical routing space.

Description

A kind of routing table converging device and method thereof
Technical field
The present invention relates to the computer network communication technology field, particularly relate to a kind of Internet protocol (Internet Protocol, IP) optimization means of unicast routing table and method thereof in the network.
Background technology
IP network such as router and three-tier switch forwarding unit carries out message forwarding by searching IP route table.Along with the high speed development of IP network, the continuous expansion of network node, in large-scale IP network, route quantity maintains sustained and rapid growth, and can reach the order of magnitude of hundreds of thousands.The routing table that the core net forwarding unit need be safeguarded for the correct IP of forwarding message also increases thereupon, and this jumbo routing table requires more overhead, as takies a large amount of internal memories.
In present IP forwarding unit, the upper-layer protocol software learning is submitted to reflecting software then to effective routing iinformation, is kept in the routing table.Forwarding engine realizes that according to the indication of routing table the high speed of message is transmitted.Routing table adopts man-to-man mode to store routing iinformation, i.e. the list item of a corresponding routing table of routing iinformation.Generally include following these contents in each list item: next-hop ip address, outbound port, if the label route also needs storage tags.Though the design clear logic is easy to safeguard like this, can take a large amount of internal memories.In the high speed forwarding unit, use hardware to realize usually, the Hardware Forwarding Engine space is limited, the routing table that can hold is also very limited, so in the routing table dilatation, hardware space can not be with it synchronously with the expansion of capacity, and this becomes increasingly conspicuous with regard to causing the contradiction between routing table expansion and the hardware constraints.
Chinese patent CN02131448 proposes to carry out polymerization before submitting routing iinformation to routing table, purpose is to reduce the route quantity that is submitted in the routing table.Its aggregate objects is the route that belongs to the same network segment, on middle forwarding unit, these forward-path major parts that belong to same network segment route are identical, can cover their route separately with a route fully, route for those different paths still can instruct forwarding with route separately, only just each destination address is set up concrete forwarding route on the edge forwarding unit.On upper-layer protocol software, increase processing, can reduce the route quantity that the protocol software is submitted to reflecting software same network segment route.
By analysis, after the such processing of process, routing table still has very big optimization leeway.The outgoing interface of hardware forwarding unit is limited, the neighbouring device of forwarding unit is limited, so Dui Ying next-hop ip address also is limited with it, what this explanation had a lot of uses in the routing iinformation of number in hundreds of thousands is the information of repetition, such as, tens of route has identical outgoing interface and next-hop ip address, and some other identical forwarding route, if these identical parts are represented with a list item, these routes all are associated with on this list item, under best situation, this method can make the space save tens times so.Prior art does not provide said method as yet.
Summary of the invention
Technical problem to be solved by this invention is to provide a kind of routing table converging device and method thereof, is used to the route quantity that reduces the routing table occupation space, improves identical routing space storage.
To achieve these goals, the invention provides a kind of routing table converging device, it is characterized in that, comprising:
One interface module is used to provide the advertising of route interface of forwarding plane and protocol level;
One polymerization routing module is used for creating, safeguarding a polymerization routing table, and by the polymerizable information in the described polymerization routing table preservation routing iinformation;
One polymerization routing module control is used to preserve the related information of route and described polymerization routing table, and according to described related information described polymerization routing module is controlled;
One polymerizable routing module not is used for creating, safeguards a polymerizable routing table not, and by described not polymerizable routing table preserve in the routing iinformation can not aggregation information;
One polymerizable routing module control not is used for by controlling the not described not polymerizable routing module of distribution control of polymerizable routing table;
One routing index module, be used for creating, safeguarding a routing index table, and in described routing index table, search routing index, the route that described routing index table is used for writing down various objectives address correspondence is at the described polymerization routing table and the index of polymerizable routing table not;
Described interface module receives a routing iinformation and this routing iinformation is classified, transfer to described routing index module and in described routing index table, search the index of route correspondence, described polymerization routing module, described polymerization routing module control are revised described polymerization routing table according to described index, described routing iinformation, and return a polymerization routing index to described routing index table; Described not polymerizable routing module, described not polymerizable routing module control are revised described not polymerizable routing table according to described index, described routing iinformation, and return one not the polymerizable routing index to described routing index table.
Described routing table converging device, wherein, described polymerizable information comprises: next hop address, outgoing interface, go out outer layer label and marker bit, described marker bit comprises again: local routing label, direct-connected routing label, on send mark, tunnel label and load sharing mark.
Described routing table converging device, wherein, described can not aggregation information comprising: go out vpn label and Virtual Private Network sign.
Described routing table converging device, wherein, described destination address is IP address, Virtual Private Network sign or label information.
To achieve these goals, the present invention also provides the routing table polymerization of described routing table converging device, it is characterized in that, comprising:
Step 51 receives routing iinformation by interface module;
Step 52 is searched the index of route correspondence in the routing index table according to the destination address in the described routing iinformation by the routing index module;
Step 53 is revised the polymerization routing table that described polymerization routing module is created by polymerization routing module, polymerization routing module control according to described index, described routing iinformation, and returns the polymerization routing index to described routing index table; By polymerizable routing module not, the polymerizable routing module control is revised the not polymerizable routing table that described not polymerizable routing module is created according to described index, described routing iinformation, and return not the polymerizable routing index to described routing index table.
Described routing table polymerization, wherein, in the described step 52, described step of searching the index of route correspondence is specially:
Step 621, the pairing 32 bit destination addresses of described route are divided into 8 groups in the mode of one group of 4 bit, from higher bit to low bit is respectively group one, group two, group three, group four, group five, group six, group seven, group eight, and every group of numerical value is represented an offset address;
Step 622, described routing index table are distributed an initial address in internal memory when initialization, begin the space of offset bank one size from this initial address, and will be offsets the initial address that the numerical value stored in space pointed, back is searched as the second level;
Step 623, the space of initial address offset bank two sizes of searching from the described second level, and will be offset the initial address that the numerical value of space pointed, back storage is searched as the third level;
Step 624 according to the mode of searching of described step 623, is searched up to the 8th grade and to be finished, and with the content in the space that finds this moment as the pairing route of described destination address at described polymerization routing table and the index in the polymerizable routing table not, search and finish.
Described routing table polymerization wherein, in the described step 53, also comprises the step that the operator scheme of a pair of described routing iinformation is judged.
Described routing table polymerization, wherein, when the operator scheme of described routing iinformation is the interpolation pattern, in described polymerization routing table, find a list item by an indexed mode of setting, when the corresponding information of the aggregation information of this list item and the route that will add is identical, then note the index of this list item, and the relating value in the control information of the polymerization routing module control of this list item correspondence is added 1, the index with this list item is backfilling into described routing index table as the polymerization routing index again.
Described routing table polymerization, wherein, when the operator scheme of described routing iinformation during for new model more, find respective items in the routing index table by described routing index module according to the destination address in the routing iinformation, read the corresponding list item that polymerization routing index in this respective items finds the polymerization routing table, content in this list item and the route content that will upgrade are compared,, then successfully return if identical; If different, then carry out following steps:
Relating value in the control information of the polymerization routing module control of this list item correspondence is subtracted 1;
In described polymerization routing table, find a list item,, note the index of this list item, and the relating value in the control information of the polymerization routing module control of this list item correspondence is added 1 if the information of the polymeric part of this list item is identical with the corresponding information of the route that will add;
If in existing described polymerization routing table, can not find the corresponding list item identical with the information of the route that will add, then from this polymerization routing table, distribute a new polymerization route table items, fill in its contents in table, and the relating value in the control information of the polymerization routing module control of this list item correspondence is put 1;
With the polymerization routing index in the new polymerization routing index replacement routing index table.
Described routing table polymerization, wherein, when the operator scheme of described routing iinformation was puncturing pattern, described routing index module was searched respective items according to the destination address in the routing iinformation in described routing index table;
If find the polymerization routing index, then the relating value in the control information of the polymerization routing module control of the polymerization route table items correspondence of this polymerization routing index sensing is subtracted 1 according to this polymerization routing index;
If find not polymerizable routing index again, then according to this not the polymerizable routing index find the not corresponding list item of polymerizable routing table, empty and discharge this space, the distribute labels of the not polymerizable routing module control of this list item correspondence is put 0; Again with polymerization routing index in the described routing index table and polymerizable routing index all clear 0 not.
Useful technique effect of the present invention is:
Routing table polymerization provided by the invention, to routing iinformations all on all forwarding engines, no matter whether belong to the same network segment, divide into groups according to routing iinformation, for each group route, extract wherein identical part, adopt many-to-one mode to form the polymerization routing table, other different partial informations still adopt man-to-man mode to preserve.
The present invention is split as polymerization routing table and polymerizable routing table not with routing table, polymerisable most contents in the routing iinformation is represented with a spot of polymerization routing table, compare with existing method, reduced the routing table occupation space, improved the route quantity of storing in the identical routing space, reduced the system consumption of big capacity route Hardware Forwarding Engine.
Describe the present invention below in conjunction with the drawings and specific embodiments, but not as a limitation of the invention.
Description of drawings
Fig. 1 be in apparatus of the present invention each intermodule concern schematic diagram;
Fig. 2 is the structural representation of polymerization routing module of the present invention and polymerization routing module control;
Fig. 3 is the present invention not the polymerizable routing module and the structural representation of polymerizable routing module control not;
Fig. 4 is the routing iinformation process chart of the inventive method.
Embodiment
Be described in further detail below in conjunction with the enforcement of accompanying drawing the routing table polymerization that the present invention is based on routing iinformation:
As shown in Figure 1, be the schematic diagram that concerns of each intermodule in apparatus of the present invention.Apparatus of the present invention comprise: interface module 11, routing index module 12, polymerization routing module 13, polymerization routing module control 14, not polymerizable routing module 15, polymerizable routing module control 16 not.
Interface module 11, be used to provide the advertising of route interface of forwarding plane and protocol level, receive effective route that the protocol software is learnt from upper-layer protocol software, and the routing iinformation that receives is classified, for example, common IP route, label route etc., different routing iinformations is different on the route querying mode.
Routing index module 12 is used for according to certain mode route being searched fast.Routing index module 12 is created and is safeguarded that a routing index table, the content of this routing index table are that the forwarding route of various objectives address correspondence is at polymerization routing table 17 and the index in the polymerizable routing table 18 not.
Routing index module 12 can select the different modes of searching to search in the routing index table according to different route-types.Adopt the routing index table can realize transmitting searching fast of route, search the forwarding route and needn't browse whole routing table, searching speed can significantly improve like this.
Polymerization routing module 13 is used for preserving the part that routing iinformation can polymerization.Polymerization routing module 13 is created and is safeguarded that a polymerization routing table 131, the content of polymerization routing table 131 comprise next hop address, outgoing interface in the routing iinformation, go out outer layer label and some marker bits; This marker bit specifically comprises again: local routing label, direct-connected routing label, on send mark, tunnel label, load sharing mark etc.
Polymerization routing module control 14 is used to preserve the related information of each route and polymerization routing table 131.
The polymerizable routing module 15, are used for preserving the not part of polymerizable of routing iinformation.Polymerizable routing module 15 is not created and is safeguarded a not polymerizable routing table 151, and the content of polymerizable routing table 151 does not comprise vpn label, Vpn ID etc.; Wherein, Vpn ID is Virtual Private Network ID number, and Vpn is Virtual Private Network, and ID is Identify.
The polymerizable routing module control 16, are used to control the not distribution of polymerizable routing table 151.
Interface module 11 is inlets of entire stream journey, routing index module 12 is that interface module 11 is led to the polymerization routing module 13 and the passage of polymerizable routing module 15 not, polymerization routing module control 14 and not polymerizable routing module control 16 be respectively the polymerization routing module 13 and the assist control part of polymerizable routing module 15 not.
Interface module 11 is classified after receiving routing iinformation, gives routing index module 12 and carries out searching of routing index table according to destination address.Polymerization routing module 13 and polymerization routing module control 14 are responsible for interpolation, deletion, the renewal of aggregation routing information, and return correct polymerization routing index; Not polymerizable routing module 15 and not polymerizable routing module control 16 be responsible for can not aggregation routing information interpolation, deletion, renewal, and return correct not polymerizable routing index.The polymerization routing index, two index of polymerizable routing index can not be backfilling in the routing index table at last.
As shown in Figure 2, be the structural representation of polymerization routing module of the present invention and polymerization routing module control.And in conjunction with Fig. 1, polymerization routing module 13 comprises a polymerization routing table 131 and a cover aggregation routing information method of operation, wherein the aggregation routing information method of operation is added the part that routing iinformation can polymerization or be updated in the polymerization routing table 131, or deletion from polymerization routing table 131.Polymerization routing table 131 has two kinds of indexed modes, and a kind of is to carry out linear directory according to index value, and this indexed mode is used to read the polymerization route table items content of polymerization routing table 131; Another kind is to carry out Hash (Hash) index according to polymerization route table items content, and this mode is used to search the polymerization route table items of not knowing index.
Polymerisable routing iinformations such as polymerization routing table 131 storing IP addresses.Hash concordance list 201 storage keys.
Some additional informations of polymerization routing module control 14 store aggregated routing tables 131, include how many bar routes and be associated with certain polymerization route table items, promptly be associated with the number of routes (relating value) of this polymerization route table items, having only just can be with this list item deletion when not having route to be associated with this list item.Polymerization routing module control 14 also comprises two index index value of correspondence former and later two polymerization route table items in the Hash of polymerization route conflict chain 202 respectively.
As shown in Figure 3, be the present invention not the polymerizable routing module and the structural representation of polymerizable routing module control not.Not polymerizable routing module 16 comprise one not polymerizable routing table 151 and one the cover can not the aggregation routing information method of operation.Wherein, can not the aggregation routing information method of operation be responsible for part that cannot polymerization in the routing iinformation added or be updated to not in the polymerizable routing table 151, perhaps never deletion in the polymerizable routing table 151.Polymerizable routing table 151 does not have only a kind of indexed mode, promptly carries out linear directory according to index value.
The routing iinformation of polymerizable not such as polymerizable routing table 151 storage Vpn ID not.
Polymerizable routing module control 16 storage is all information of whether having distributed of polymerizable route table items not in the polymerizable routing table 151 not, avoids the situation of duplicate allocation.
As shown in Figure 4, be the routing iinformation process chart of the inventive method.This handling process is the overall process based on the routing table polymerization of routing iinformation, and in conjunction with shown in Figure 1, this flow process specifically comprises following step:
The routing iinformation of step 401,11 pairs of high layer software announcements of interface module is classified;
Step 402, routing index module 12 are searched according to destination address in the routing index table, note the position of searching, and polymerization routing index that finds and polymerizable routing index not; Wherein, the polymerization routing index is the index of route in polymerization routing table 131, not the polymerizable routing index index that is route in polymerizable routing table 151 not.Adopt this method to preserve routing index, forwarding engine is found when transmitting the IP message fast transmit required information, browse one by one in the polymerizable routing table 151 and needn't arrive in the polymerization routing table 131 or not.
In this step, destination address can be IP address, Vpn ID or label information.
In this step, the mode of the searching step of routing index module 12 is as follows:
Steps A is divided into 8 groups with the pairing 32bits of this forwarding route (bit) destination address in the mode of one group of 4bits, is respectively group 1, group 2, group 3, group 4, group 5, group 6, group 7, group 8 from higher bit to low bit; Every group of numerical value is all represented an offset address;
Step B, routing index table have distributed an initial address Base1 in internal memory when initialization; Begin the space of offset bank 1 size from the Base1 initial address, check the numerical value of the space storage that the skew back is pointed, be referred to as Base2; Base2 is the initial address that search the second level;
Step C begins the space of offset bank 2 sizes from the Base2 address, check the numerical value of the space storage that the skew back is pointed, is referred to as Base3; Base3 is the initial address that the third level is searched;
Step D searches downwards after the same method, searches up to the 8th grade and finishes; This moment, the content in the space that finds was exactly the pairing forwarding route of this destination address at polymerization routing table 131 and the index in the polymerizable routing table 151 not, so far finished and searched.
Step 403, the operator scheme of judging this routing iinformation are to add or upgrade or deletion, if this time the operator scheme of routing iinformation is to add or upgrade, then walk to add more new technological process, promptly change step 404 over to and carry out; If this time the operator scheme of routing iinformation is deletion, then walk to delete flow process, promptly change step 410 over to and carry out.New technological process, deletion flow process are introduced to adding more respectively below.
When the routing operations pattern for adding or new model more, carry out following flow process:
Whether comprise the not routing iinformation of polymerizable in routing iinformation of step 404, judgement announcement this time, for example, go out vpn label, Vpn ID etc.If include the not routing iinformation of polymerizable, then go to step 405, if do not comprise the not routing iinformation of polymerizable, then jump directly to step 406;
Step 405, judge whether the not polymerizable routing index in the routing index table is 0; If the polymerizable routing index is not 0, then directly with in the routing iinformation of this announcement not the part of polymerizable substitute original can not aggregation information.If the polymerizable routing index is not 0, then redistribute a not polymerizable route table items, fill in contents in table, in the routing index table, preserve this not polymerizable routing index, and the distribute labels in the control information of the not polymerizable routing module control 16 of this list item correspondence is changed to 1;
Step 406, judge whether the polymerization routing index in the routing index table is 0; If the polymerization routing index is not 0, then go to step 407; If the polymerization routing index is 0, then jump directly to step 408;
Polymerisable part and polymerization routing index polymerization route table items pointed compares in step 407, the routing iinformation with this announcement, judge whether polymerization routing index polymerization route table items content pointed is consistent with the polymerization route table items content that will increase/upgrade, if coming to the same thing relatively then jumps directly to step 409; If difference as a result relatively then subtracts 1 with the relating value in the control information of the polymerization routing module control 14 of this polymerization route table items correspondence, and judges whether the relating value that subtracts after 1 is 0,, then empty and discharge this polymerization route table items if relating value is 0; If relating value is not 0, then do not do other processing;
Step 408, carry out Hash according to the polymeric part of the routing iinformation of this announcement and search, determine the Hash conflict chain of Hash key value correspondence, on Hash conflict chain, seek the identical polymerization route table items of polymeric part content with the routing iinformation of this announcement.If find, then the relating value in the control information of the polymerization routing module control 14 of this polymerization route table items correspondence is added 1, and the polymerization routing index is backfilling in the routing index table.If do not find, then distribute new polymerization route table items, and the relating value in the control information of the polymerization routing module control 14 of correspondence is put 1, be linked on the Hash conflict chain, and the polymerization routing index is backfilling in the routing index table;
Step 409, finish operation this time, return success.
Particularly, when the routing operations pattern is the interpolation pattern, by the Hash index, in polymerization routing table 131, find a certain polymerization route table items, the information of its polymeric part is identical with the corresponding information of this route that to be ready adding, note the index of this list item, and the relating value in the control information of the polymerization routing module control 14 of this list item correspondence added 1, this relating value represents to have the route of respective number to be associated with on this polymerization route table items, the polymerization routing index is backfilling in the polymerization routing index of the routing index table that finds again.
If this route comprises some not information of polymerizable, then explanation will distribute a not polymerizable route table items for it, and the assignment flag in the control information of the not polymerizable routing module control 16 of polymerizable routing table 151 is not put 1.The index value of polymerizable routing table 151 not is backfilling in the not polymerizable routing index of the routing index table that finds.
Particularly, when routing operations pattern during for new model more, routing index module 12 finds the respective items in the routing index table according to the IP address in the routing iinformation (or Vpn ID, or label information); Read polymerization routing index in this respective items finding the corresponding list item of polymerization routing table 131, content in the list item and the route content that to be ready upgrading are compared,, then successfully return if identical; If different, illustrate that then routing iinformation has change, following operation is arranged:
1., the relating value in the control information of the polymerization routing module control 14 of this list item correspondence is subtracted 1,, then empty and discharge this list item if be 0 after relating value subtracts 1;
2., in polymerization routing table 131, find a certain list item, the information of its polymeric part is identical with the corresponding information of this route of being ready to add, and notes the polymerization routing index of this list item, and the relating value in the control information of the polymerization routing module control 14 of this list item correspondence is added 1;
3., if in existing polymerization routing table 131, can not find identical with the information on this road that to be ready adding, then from polymerization routing table 131, distribute a new polymerization route table items, fill in its contents in table, and the relating value of the control information of the polymerization routing module control 14 of this list item correspondence is put 1.With the polymerization routing index in the new polymerization routing index replacement routing index table.
If in the routing index table, find not polymerizable routing index, then find the not corresponding list item of polymerizable routing table 151, and revise content in this list item according to the routing iinformation that to be ready adding according to polymerizable routing index not.
When the routing operations pattern is a puncturing pattern, carry out following flow process:
Step 410, judge whether the not polymerizable routing index in the routing index table is 0; If the polymerizable routing index is not 0, then empty and delete the not polymerizable list item of not polymerizable routing index correspondence/sensing; If the polymerizable routing index is not 0, then do not operate, continue descending;
Step 411, judge whether the polymerization routing index in the routing index table is 0; If the polymerization routing index is not 0, then the relating value in the control information of the polymerization routing module control 14 of the polymerization route table items correspondence that the polymerization routing index is pointed to subtracts 1; If the polymerization routing index is 0, then skip to step 413;
Whether the relating value that step 412, judgement subtract after 1 is 0; If relating value is 0, then empties and discharge this polymerization route table items; If relating value is not 0, then continue descending;
Step 413, empty the record in the routing index table: polymerization routing index and polymerizable routing index not;
Step 409, finish operation this time, return success.
Particularly, when the routing operations pattern was puncturing pattern, routing index module 12 found the respective items in the routing index table according to the purpose IP address in the routing iinformation (or Vpn ID, or label information).If do not find the index of this route correspondence then successfully return; If find the polymerization routing index, then revise control information in the polymerization routing module control 14 of polymerization route table items correspondence of this index point according to the polymerization routing index, the relating value in the control information is subtracted 1.If the value that subtracts after 1 of relating value is 0, illustrating does not have route to be associated with this list item, then empties and discharges this polymerization route table items; Otherwise directly return.If find not polymerizable routing index simultaneously again, then according to this not the polymerizable routing index find the not corresponding list item of polymerizable routing table 151, empty and discharge this space, the distribute labels in the control information of the not polymerizable routing module control 16 of this list item correspondence is put 0.Finish aforesaid operations, with polymerization routing index in the routing index table and polymerizable routing index all clear 0 not.
The present invention is split as polymerization routing table and polymerizable routing table not with routing table, polymerisable most contents in the routing iinformation is represented with a spot of polymerization routing table, compare with existing method, reduced the routing table occupation space, improved the route quantity of storing in the identical routing space, reduced the system consumption of big capacity route Hardware Forwarding Engine.
Certainly; the present invention also can have other various embodiments; under the situation that does not deviate from spirit of the present invention and essence thereof; those of ordinary skill in the art work as can make various corresponding changes and distortion according to the present invention, but these corresponding changes and distortion all should belong to the protection range of the appended claim of the present invention.

Claims (10)

1, a kind of routing table converging device is characterized in that, comprising:
One interface module is used to provide the advertising of route interface of forwarding plane and protocol level;
One polymerization routing module is used for creating, safeguarding a polymerization routing table, and by the polymerizable information in the described polymerization routing table preservation routing iinformation;
One polymerization routing module control is used to preserve the related information of route and described polymerization routing table, and according to described related information described polymerization routing module is controlled;
One polymerizable routing module not is used for creating, safeguards a polymerizable routing table not, and by described not polymerizable routing table preserve in the routing iinformation can not aggregation information;
One polymerizable routing module control not is used for by controlling the not described not polymerizable routing module of distribution control of polymerizable routing table;
One routing index module, be used for creating, safeguarding a routing index table, and in described routing index table, search routing index, the route that described routing index table is used for writing down various objectives address correspondence is at the described polymerization routing table and the index of polymerizable routing table not;
Interface module is classified after receiving routing iinformation, gives described routing index module and carries out searching of routing index table according to destination address; Described polymerization routing module and described polymerization routing module control are responsible for interpolation, deletion, the renewal of aggregation routing information, and return correct polymerization routing index; Described not polymerizable routing module and described not polymerizable routing module control be responsible for can not aggregation routing information interpolation, deletion, renewal, and return correct not polymerizable routing index; The polymerization routing index, two index of polymerizable routing index can not be backfilling in the routing index table at last.
2, routing table converging device according to claim 1, it is characterized in that, described polymerizable information comprises: next hop address, outgoing interface, go out outer layer label and marker bit, described marker bit comprises again: local routing label, direct-connected routing label, on send mark, tunnel label and load sharing mark.
3, routing table converging device according to claim 1 is characterized in that, described can not aggregation information comprising: go out vpn label and Virtual Private Network sign.
According to claim 1,2 or 3 described routing table converging devices, it is characterized in that 4, described destination address is IP address, Virtual Private Network sign or label information.
5, a kind of routing table polymerization that adopts the described routing table converging device of claim 1 is characterized in that, comprising:
Step 51 receives routing iinformation by interface module;
Step 52 is searched the index of route correspondence in the routing index table according to the destination address in the described routing iinformation by the routing index module;
Step 53, described polymerization routing module and described polymerization routing module control are added, delete, are upgraded aggregation routing information, and return correct polymerization routing index; Described not polymerizable routing module and described not polymerizable routing module control add, deletion, upgrading can not aggregation routing information, and return correct not polymerizable routing index; The polymerization routing index, two index of polymerizable routing index can not be backfilling in the routing index table at last.
6, routing table polymerization according to claim 5 is characterized in that, in the described step 52, described step of searching the index of route correspondence is specially:
Step 621, the pairing 32 bit destination addresses of described route are divided into 8 groups in the mode of one group of 4 bit, from higher bit to low bit is respectively group one, group two, group three, group four, group five, group six, group seven, group eight, and every group of numerical value is represented an offset address;
Step 622, described routing index table are distributed an initial address in internal memory when initialization, begin the space of offset bank one size from this initial address, and will be offsets the initial address that the numerical value stored in space pointed, back is searched as the second level;
Step 623, the space of initial address offset bank two sizes of searching from the described second level, and will be offset the initial address that the numerical value of space pointed, back storage is searched as the third level;
Step 624 according to the mode of searching of described step 623, is searched up to the 8th grade and to be finished, and with the content in the space that finds this moment as the pairing route of described destination address at described polymerization routing table and the index in the polymerizable routing table not, search and finish.
7, according to claim 5 or 6 described routing table polymerizations, it is characterized in that, in the described step 53, also comprise the step that the operator scheme of a pair of described routing iinformation is judged.
8, routing table polymerization according to claim 7, it is characterized in that, when the operator scheme of described routing iinformation is the interpolation pattern, in described polymerization routing table, find a list item by the HASH indexed mode, when the corresponding information of the aggregation information of this list item and the route that will add is identical, then note the index of this list item, and the relating value in the control information of the polymerization routing module control of this list item correspondence added 1, the index with this list item is backfilling into described routing index table as the polymerization routing index again.
9, routing table polymerization according to claim 7, it is characterized in that, when the operator scheme of described routing iinformation during for new model more, find respective items in the routing index table by described routing index module according to the destination address in the routing iinformation, read the corresponding list item that polymerization routing index in this respective items finds the polymerization routing table, content in this list item and the route content that will upgrade are compared,, then successfully return if identical; If different, then carry out following steps:
Relating value in the control information of the polymerization routing module control of this list item correspondence is subtracted 1;
In described polymerization routing table, find a list item,, note the index of this list item, and the relating value in the control information of the polymerization routing module control of this list item correspondence is added 1 if the information of the polymeric part of this list item is identical with the corresponding information of the route that will add;
If in existing described polymerization routing table, can not find the corresponding list item identical with the information of the route that will add, then from this polymerization routing table, distribute a new polymerization route table items, fill in its contents in table, and the relating value in the control information of the polymerization routing module control of this list item correspondence is put 1;
With the polymerization routing index in the new polymerization routing index replacement routing index table.
10, routing table polymerization according to claim 7 is characterized in that, when the operator scheme of described routing iinformation was puncturing pattern, described routing index module was searched respective items according to the destination address in the routing iinformation in described routing index table;
If find the polymerization routing index, then the relating value in the control information of the polymerization routing module control of the polymerization route table items correspondence of this polymerization routing index sensing is subtracted 1 according to this polymerization routing index;
If find not polymerizable routing index again, then according to this not the polymerizable routing index find the not corresponding list item of polymerizable routing table, empty and discharge this space, the distribute labels of the not polymerizable routing module control of this list item correspondence is put 0; Again with polymerization routing index in the described routing index table and polymerizable routing index all clear 0 not.
CNB2006100894902A 2006-06-29 2006-06-29 A kind of routing table converging device and method thereof Active CN100568878C (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB2006100894902A CN100568878C (en) 2006-06-29 2006-06-29 A kind of routing table converging device and method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB2006100894902A CN100568878C (en) 2006-06-29 2006-06-29 A kind of routing table converging device and method thereof

Publications (2)

Publication Number Publication Date
CN101098335A CN101098335A (en) 2008-01-02
CN100568878C true CN100568878C (en) 2009-12-09

Family

ID=39011851

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2006100894902A Active CN100568878C (en) 2006-06-29 2006-06-29 A kind of routing table converging device and method thereof

Country Status (1)

Country Link
CN (1) CN100568878C (en)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101227405B (en) * 2008-02-18 2011-12-07 中兴通讯股份有限公司 Route assemblage method and system
CN101562573B (en) * 2009-04-22 2011-07-13 中兴通讯股份有限公司 Method and system for aggregating route items
CN102739526B (en) * 2012-06-13 2015-02-25 烽火通信科技股份有限公司 Realization method of efficient distributed routing list realizing method
CN105379210B (en) * 2014-02-21 2019-02-01 华为技术有限公司 A kind of data flow processing method and device
CN104184664B (en) * 2014-08-05 2017-07-04 新华三技术有限公司 Route forwarding table items generation method and device
CN105790973B (en) * 2014-12-18 2019-01-25 中兴通讯股份有限公司 Data transmission method and device
CN109039957B (en) * 2018-08-14 2020-10-09 新华三技术有限公司 Message forwarding method and device and CB equipment
CN111865803B (en) * 2020-06-01 2022-08-16 锐捷网络股份有限公司 Route processing method and device based on EVPN
CN113872843B (en) * 2020-06-30 2022-12-06 华为技术有限公司 Route generation method, route processing method and device

Also Published As

Publication number Publication date
CN101098335A (en) 2008-01-02

Similar Documents

Publication Publication Date Title
CN100568878C (en) A kind of routing table converging device and method thereof
CN102124703B (en) Switching table in an Ethernet bridge
US6606681B1 (en) Optimized content addressable memory (CAM)
CN100450073C (en) Method and apparatus for memory efficient fast vlan lookups and inserts in hardware-based packet switches
US6467019B1 (en) Method for memory management in ternary content addressable memories (CAMs)
CN1316390C (en) Performance and memory bandwidth utilization for tree searches using tree fragmentation
CN103023827B (en) Data forwarding method for virtualized data centre and realization equipment of data forwarding method
CN100418331C (en) Route searching result cache method based on network processor
CN101141389B (en) Reinforcement multidigit Trie tree searching method and apparatus
EP2352258B1 (en) Storage method and apparatus
US9871727B2 (en) Routing lookup method and device and method for constructing B-tree structure
CN100566281C (en) The method and apparatus of virtual private network routing search
CN103227778B (en) Memory pool access method, equipment and system
WO2000051298B1 (en) Network router search engine using compressed tree forwarding table
GB2459388A (en) Dynamically routing salvage shipments using a transport planner
CN103918230B (en) Synchronizing forwarding databases in a network device background
CN101620623A (en) Method and device for managing list item of content addressable memory CAM
CN102147798A (en) Method and device for handling Hashed search conflicts
CN106991102A (en) The processing method and processing system of key-value pair in inverted index
CN104111924A (en) Database system
CN102597973A (en) Method and device for improving scalability of longest prefix match
CN104536911A (en) Multi-path set-connection cache memory and processing method thereof
CN100426791C (en) Engine apparatus for route forwarding table address searching
CN100479436C (en) Management and maintenance method for static multi-interface range matching table
CN105718319A (en) Memory pool territory analysis method and memory pool device

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