Presentation is loading. Please wait.

Presentation is loading. Please wait.

Range Trees with Variable Length Comparisons (RT-VLC)

Similar presentations


Presentation on theme: "Range Trees with Variable Length Comparisons (RT-VLC)"— Presentation transcript:

1 Range Trees with Variable Length Comparisons (RT-VLC)
Author: Ioannis Sourdis, Ruben de Smet, and Georgi N. Gaydadjiev Publisher: 15th IEEE Workshop on High Performance Switching and Routing (HPSR), 2009 Presenter: Chin-Chung Pan Date: 2009/09/08

2 Outline Introduction RT-VLC Rules Constructing a RT-VLC Performance

3 Introduction-Range Tree
L: less, E:equal, GE: greater or equal, G: greater.

4 Introduction-Range Tree
Range Trees avoid the length dimension performing comparisons on the expanded prefixes (full addresses). Range Trees need to store the complete addresses to be compared at each stage and therefore consume considerable memory size.

5 Introduction-Range Trees with Variable Length Comparisons(RT-VLC)
CP: Common Prefix, ‘-’: bit not necessary to be processed, L: less, E:equal, GE: greater or equal, G: greater.

6 RT-VLC Rules The address range [Na,Nb) and divides it in k+1 subranges R1, R2, ..., Rk+1 defined by the unique addresses (of width W) Ai ∈ [Na,Nb), ∀i ∈ N, i ≤ k, such that R1 = [Na,A1), .., Ri = [Ai−1,Ai), ... Rk+1 = [Ak,Nb).

7 RT-VLC Rules (cont.) Rule 1:Omit the common prefix of the node border.
Rule 2:Omit address suffix of value ’0’. Rule 3:Share addresses’ common prefix. Rule 4:Share addresses’ common suffix.

8 Rule 1:Omit the common prefix of the node border
When there is a common prefix of length L (L < W) of the node borders Na and Nb then the L most significant bits of the addresses Ai can be omitted from the comparisons at the node. Na ≦ AIN< Nb RT-VLC Node Na Nb A1 A2 00000 00011 00101 01000 (00111) --011 --101

9 Rule 2:Omit address suffix of value ’0’
Ai have a suffix of length L, where L < W, that is zero. Then, this suffix of Ai does not need to be compared against the L last bits of AIN. Na ≦ AIN< Nb RT-VLC Node Na Nb A1 A2 00100 01010 001-- 0101-

10 Rule 3:Share addresses’ common prefix
The Common Prefix ACPi of the addresses Ai of length L (L < W) can be shared among concurrent comparisons and processed separately. Na ≦ AIN< Nb 1110- G E 11100 11101 L ----1 L GE L GE Na Nb L GE A1 A2

11 Rule 4:Share addresses’ common suffix
The common suffix ACSi of the addresses Ai, of length L (L < W) can be shared among concurrent comparisons and processed separately 011-- 110-- Na ≦ AIN< Nb G L E E L G ---01 01101 11001 L GE L GE L GE Na Nb A1 A2

12 Constructing a RT-VLC Top-Down Heuristic Bottom-Up Heuristic

13 Constructing a RT-VLC - Top-Down Heuristic

14 Constructing a RT-VLC - Top-Down Heuristic
01--- 1---- --11- --01- --10- -1100 CP: -110- -1101 ----1 R1 R2 R3 R4 R5 R6 R7 R6

15 Constructing a RT-VLC - Top-Down Heuristic
Step1:Apply the RT-VLC rules 1 and 2. Step2:Select a comparator length that maximizes the possible number of branches, i.e., 8-bits. Step3:Consider all addresses in the set to be processed with the above comparison length. Omit address suffixes that cannot be compared assuming they are equal to zero. Step4:Based on the above create the defined from the comparisons groups/intervals.

16 Constructing a RT-VLC - Top-Down Heuristic
Step5:If necessary merge neighboring groups until the number of comparisons are reduced to the available comparator resources. Step6:Recursively repeat for the created children nodes. Step7:Terminate when each node branch points to a single address range.

17 Constructing a RT-VLC - Bottom-Up Heuristic

18 Constructing a RT-VLC - Bottom-Up Heuristic
Na 00000 A A A A A A A Nb 11111 01--- 1---- CP:-1100 --11- --01- --10- -1100 -1101 -1101 A1 00110 A2 01000 A3 01010 A4 01100 A5 10000 A6 11100 A7 11101 Nb Na N’a 00000 N’a 01000 N’b 01000 N’a 10000 N’b 10000 N’b 11111

19 Constructing a RT-VLC - Bottom-Up Heuristic
Step1:Select the first b addresses Ai > Na (where Na initially is 0) that can be compared in one node after applying the RT- VLC rules (e.g., addresses Ai,Ai+1, ...Ab). Step2:Set node’s upper bound Nb a point in the address space where Nb < Ab+1 that Na has a long suffix of 0’s2. The resulted node maps to an address range [Na,Nb). Step3:Repeat the above starting from the upper bound of the previous group (Nnewa = Nprevb ) until all addresses Ai in the address space are grouped.

20 Constructing a RT-VLC - Bottom-Up Heuristic
Step4:Recursively repeat the above steps for the next upper tree level L−1 using as new set of addresses AL−1i the borders NLi of the previous level. Step5:Terminate when all addresses in the list are processed in a single (root) node.

21 Performance-Top-Down

22 Performance-Bottom-Up

23 Performance-IPv6


Download ppt "Range Trees with Variable Length Comparisons (RT-VLC)"

Similar presentations


Ads by Google