Overlapping Hash Trie A Longest Prefix First Search

  • Slides: 22
Download presentation
Overlapping Hash Trie: A Longest Prefix First Search Scheme for IPv 4/IPv 6 Lookup

Overlapping Hash Trie: A Longest Prefix First Search Scheme for IPv 4/IPv 6 Lookup Author: Qiong Sun, Zhenqi_ng Li, Yan Ma Publisher: Communication Tecnology, 2006. ICCT ’ 06. Iternational Conference on Presenter: Chen-Yu Chang

Outline n Related work n Introduction n OHT of IPv 4/IPv 6 ü OHT

Outline n Related work n Introduction n OHT of IPv 4/IPv 6 ü OHT construction ü Prefixs of corresponding data structure ü Important parameters ü IP lookup in OHT ü OHT updating operation n Performance evaluation

Related work n LPFST ü ü Puts the routing entry with longer prefix on

Related work n LPFST ü ü Puts the routing entry with longer prefix on the upper level of the tree This scheme can stop immediately as matching

Outline n Related work n Introduction n OHT of IPv 4/IPv 6 ü OHT

Outline n Related work n Introduction n OHT of IPv 4/IPv 6 ü OHT construction ü Prefixs of corresponding data structure ü Important parameters ü IP lookup in OHT ü OHT updating operation n Performance evaluation

Introduction n Although LPFST scheme can stop immediately when meeting a match, the bottleneck

Introduction n 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. n 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 n Related work n Introduction n OHT of IPv 4/IPv 6 ü OHT

Outline n Related work n Introduction n OHT of IPv 4/IPv 6 ü OHT construction ü Prefixs of corresponding data structure ü Important parameters ü IP lookup in OHT ü OHT updating operation n Performance evaluation

OHT construction(1/8) According to the routing table, we created a binary trie as follow.

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

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

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

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). A Overlapping 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

OHT construction(5/8) Finally, we put prefixes longer than 6(TEL) in hash tables overlapping on segment. Overlapping A B C D E F G H I J

OHT construction(6/8) As one segment node can have more than one length, we introduce

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 E 7 F 8 G H I J

OHT construction(7/8) Data Structure of OHT developed from ordinary trie. I Hash table 7

OHT construction(7/8) Data Structure of OHT developed from ordinary trie. I Hash table 7 Hash index Segment I J H 7 8 7 A Sub-trie B C F D G E

OHT construction(8/8) n We should keep in mind that every TL is overlapped by

OHT construction(8/8) n We should keep in mind that every TL is overlapped by the long-prefixes with fixed corresponding length (CL), for instance, CL 3 is 6 on TL 3 and CL 4 is 5 on TL 4, and they has the following equation: ( CLn = 2*TEL + 1 – TLn) I J H 7 8 7 A B C F 5 = CL 3 = 2*4+1 -4 D G E 6 = CL 3 = 2*4+1 -3

Prefixs of corresponding data structure n In conclusion, we classify all the prefixes into

Prefixs of corresponding data structure n 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) n For the routing table in above example, the parameters like SL,

Important parameters(1/3) n For the routing table in above example, the parameters like SL, 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 table 2.

Important parameters(2/3) n In accordance, we choose these parameters with the following guidelines: ü

Important parameters(2/3) n 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 prefixexpansion. 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) n The table 3 shows these parameters we choose for IPv 4

Important parameters(3/3) n The table 3 shows these parameters we choose for IPv 4 and IPv 6.

IP lookup in OHT n n n Ex 1: 11101101 Ex 2: 00110001 Ex

IP lookup in OHT n n n Ex 1: 11101101 Ex 2: 00110001 Ex 3: 10001010 0010001* 11101100 I J H 7 8 7 00* A 10* C F 00100* 001* 100* D 1110110* B G 100010* E 1110*

OHT updating operation n while for deleting or modifying, we could execute the similar

OHT updating operation n 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 n Related work n Introduction n OHT of IPv 4/IPv 6 ü OHT

Outline n Related work n Introduction n OHT of IPv 4/IPv 6 ü OHT construction ü Prefixs of corresponding data structure ü Important parameters ü IP lookup in OHT ü OHT updating operation n Performance evaluation

Performance comparision of IPv 4

Performance comparision of IPv 4