220 likes | 398 Views
Overlapping Hash Trie : A Longest Prefix First Search Scheme for IPv4/IPv6 Lookup. Author: Qiong Sun, Zhenqi_ng Li, Yan Ma Publisher: Communication Tecnology, 2006. ICCT ’06. Iternational Conference on Presenter: Chen-Yu Chang. Outline. Related work Introduction OHT of IPv4/IPv6
E N D
Overlapping Hash Trie:A Longest Prefix First Search Scheme for IPv4/IPv6 Lookup Author: Qiong Sun, Zhenqi_ng Li, Yan Ma Publisher: Communication Tecnology, 2006. ICCT ’06. Iternational Conference on Presenter: Chen-Yu Chang
Outline • Related work • Introduction • OHT of IPv4/IPv6 • OHT construction • Prefixs of corresponding data structure • Important parameters • IP lookup in OHT • OHT updating operation • Performance evaluation
Related work • LPFST • Puts the routing entry with longer prefix on the upper level of the tree • This scheme can stop immediately as matching
Outline • Related work • Introduction • OHT of IPv4/IPv6 • OHT construction • Prefixs of corresponding data structure • Important parameters • IP lookup in OHT • OHT updating operation • Performance evaluation
Introduction • Although LPFST scheme can stop immediately when meeting a match, the bottleneck that choosing the entry in numerous long-prefixes within a few memory accesses is still unsettled and so that increased performance from LPFS is very limited compared to SPFS scheme. • OHT can not only find out the longest matching prefix within a great many long-prefixes immediately taking advantage of hash, but can also support fast update.
Outline • Related work • Introduction • OHT of IPv4/IPv6 • OHT construction • Prefixs of corresponding data structure • Important parameters • IP lookup in OHT • OHT updating operation • Performance evaluation
A B C D E F G H I J OHT construction(1/8) According to the routing table, we created a binary trie as follow.
A B C D E F G H I J OHT construction(2/8) There is no prefix shorter than 2 in the routing table. so we firstly constructed a segment at length 2 . (SL for segment- length). Segment
A B C D E F G H I J OHT construction(3/8) Secondly, we carve out a two stride sub-trie between length 3(TSL for trie start_length) and 4(TEL for trie end length) Sub-trie
A B C D E F G H I J OHT construction(4/8) Overlap the next two-stride prefixes of length 5 and 6 on its own sub-trie. As it is a longest prefix first search scheme, we overlap the prefixes of length 6 on trie length(TL) 3 (say prefix G overlap on D) and the ones of length 5 on TL 4 ( F overlap on the node under C). Overlapping
A B C D E F G H I J OHT construction(5/8) Finally, we put prefixes longer than 6(TEL) in hash tables overlapping on segment. Overlapping
OHT construction(6/8) As one segment node can have more than one length, we introduce another structure: hash index link to indicate the length of its hash table and they are organized in length-descending order. Index A B C D 7 7 E F 8 G H I J
8 7 7 C D A B E I H I G F J OHT construction(7/8) Data Structure of OHT developed from ordinary trie. Hash table Hash index 7 Segment Sub-trie
8 7 7 C D A B E J H F G I OHT construction(8/8) • We should keep in mind that every TL is overlapped by the long-prefixes with fixed corresponding length (CL), for instance, CL3 is 6 on TL3andCL4 is 5 on TL4, and they has the following equation: ( CLn = 2*TEL + 1 – TLn) 6 = CL3 = 2*4+1-3 5 = CL3 = 2*4+1-4
Prefixs of corresponding data structure • In conclusion, we classify all the prefixes into 4 categories based on their lengths and every class has its data structure to deal with (summarized in tablel).
Important parameters(1/3) • For the routing table in above example, the parameters like SL, TSL, TEL can be chosen easily, but for real routing table, these parameters should be defined based on the analysis of real routing table. The conclusion of prefix distribution is summarized in table2.
Important parameters(2/3) • In accordance, we choose these parameters with the following guidelines: • 1.SL should be the length less than which there are no prefixes. Only in this way can a segment be formed without prefix-expansion. • 2.CLTSL should be the length greater than which there are few distinct length prefixes, so that the length of hash index link on segment will not be long.
Important parameters(3/3) • The table3 shows these parameters we choose for IPv4 and IPv6.
0010001* 11101100 1110110* 8 7 7 C D A B 00* 10* E 001* 100* J I G F H 100010* 1110* 00100* IP lookup in OHT • Ex1:11101101 • Ex2:00110001 • Ex3:10001010
OHT updating operation • while for deleting or modifying, we could execute the similar algorithm of insert(x, length) to find the node and change the next hop information either to a default one or to the modified one. It is quite simple and flexible.
Outline • Related work • Introduction • OHT of IPv4/IPv6 • OHT construction • Prefixs of corresponding data structure • Important parameters • IP lookup in OHT • OHT updating operation • Performance evaluation