SlideShare une entreprise Scribd logo
1  sur  38
Poptrie:)A)Compressed)Trie)with)
Popula5on)Count)for)Fast)and)Scalable)
So<ware)IP)Rou5ng)Table)Lookup
Hirochika)Asai)(The)University)of)Tokyo))
Yasuhiro)Ohara)(NTT)Communica5ons)Corpora5on))
)
ACM)SIGCOMM)2015,)Aug.)18,)2015
Brief)Summary)of)Poptrie
•  Mul5way)trie)for)IP)rou5ng)table)lookup)in)
so<ware)
– Small)memory)footprint)with)popula5on)count)
•  e.g.,)2.4)MiB)for)a)global)5erV1)ISP’s)full)route)
– Good)performance)through)comprehensive)
evalua5on)
•  4–578%)faster)than)other)stateVofVtheVart)technologies)
–  Private)and)public)IPv4/IPv6)rou5ng)tables)
–  FutureVenvisioned)800K+)IPv4)routes)
•  Advantageous)for)longer)prefixes)
–  demonstrated)through)perVlookup)performance)analysis)
Aug.)18,)2015
Poptrie:)A)Compressed)Trie)with)Popula5on)Count)
for)Fast)and)Scalable)So<ware)IP)Rou5ng)Table)Lookup
IP)Rou5ng)Table)Lookup
•  Principle)
– Longest)prefix)match)
•  Challenges)
1.  Large)and)growing)rou5ng)table)
•  IPv4:)500K+)entries)
•  IPv6:)20K+)entries)
2.  High)lookup)rate)requirement)
•  e.g.,)148.8)Mpps)!)6.7)ns)per)lookup)
(at)the)wireVrate)on)100)GbE)of)minimumVsize)frames)))
Aug.)18,)2015
Poptrie:)A)Compressed)Trie)with)Popula5on)Count)
for)Fast)and)Scalable)So<ware)IP)Rou5ng)Table)Lookup
Radix)Tree)(Revisited)
Aug.)18,)2015
Poptrie:)A)Compressed)Trie)with)Popula5on)Count)
for)Fast)and)Scalable)So<ware)IP)Rou5ng)Table)Lookup
d
c
b
0
1
e
0
1
a
0
0.0.0.0/0
128.0.0.0/1
0.0.0.0/2 64.0.0.0/2
64.0.0.0/3
Radix&Tree&Example
Problems)with)the)radix)tree)
•  Depth)up)to)32)(for)IPv4))
•  requires)a)number)of)
memory)access)
•  Large)memory)footprint)
due)to)many)pointers)
•  causes)CPU)cache)misses)
")Bad&performance)
Prefix)length)
=)Priority
Prefix
Fundamental)data)structure)and)algorithm)for)longest)prefix)match
Related)Work:)Fast)IP)Rou5ng)Table)
Lookup)Algorithms
Approach Feature
Tree)BitMap)[1] Trie)(partly)
mul5way)
Succinct)data)structure)within)
CPU)cache)size
SAIL)[2] Trie)(mul5way) Op5mized)mul5Vlevel)trie)(3V
level)for)IPv4)
DXR)[3] Range Small)memory)footprint)and)
high)L1)cache)efficiency
Aug.)18,)2015
Poptrie:)A)Compressed)Trie)with)Popula5on)Count)
for)Fast)and)Scalable)So<ware)IP)Rou5ng)Table)Lookup
[1])W.)Eatherton)et)al.,)“Tree)Bitmap:)Hardware/So<ware)IP)Lookups)with)Incremental)Updates,”)ACM)SIGCOMM)CCR,)2004)
[2])T.)Yang)et)al.,)“Guarantee)IP)Lookup)Performance)with)FIB)Explosion,”)ACM)SIGCOMM)2014)
[3])M.)Zec)et)al.,)“DXR:)Towards)a)Billion)Rou5ng)Lookups)Per)Second)in)So<ware,”)ACM)SIGCOMM)CCR,)2012)
Key)Ideas)for)High)Lookup)Rate
1.  Reduce)instruc5ons)including)memory)access)
– Reduce)the)lookup)depth)of)the)trie)
2.  Increase)CPU)cache)efficiency)
– Compress)the)data)structure)for)small)memory)
footprint)within)CPU)cache)size)
Aug.)18,)2015
Poptrie:)A)Compressed)Trie)with)Popula5on)Count)
for)Fast)and)Scalable)So<ware)IP)Rou5ng)Table)Lookup
Poptrie&
V  Extended)from)the)mul5way)trie))
V  Compressed)with)popula5on)count)(CPU)instruc5on))
At)a)Glance:)Radix)Tree
0.0.0.0
255.255.255.255 128.0.0.0
Root
mul5cast/reserved)
/24 /16
Aug.)18,)2015
(*))IPv4)Rou5ng)table)from)
an)AS)border)router)of)
WIDE)Project)(Jan.)3,)2015)
At)a)Glance:)Poptrie
0.0.0.0
255.255.255.255 128.0.0.0
mul5cast/reserved)
/24
Aug.)18,)2015
(*))IPv4)Rou5ng)table)from)
an)AS)border)router)of)
WIDE)Project)(Jan.)3,)2015)
Root
Poptrie
•  Basic)algorithm)
– Mul5way)trie)
– Pointer)compression)with)popula5on)count)
•  Extensions)
– Compression)with)leaf)bitVvector)
– Route)aggrega5on)
– Direct)poin5ng
Aug.)18,)2015
Poptrie:)A)Compressed)Trie)with)Popula5on)Count)
for)Fast)and)Scalable)So<ware)IP)Rou5ng)Table)Lookup
Poptrie
•  Basic&algorithm&
– Mul5way)trie)
– Pointer)compression)with)popula5on)count)
•  Extensions)
– Compression)with)leaf)bitVvector)
– Route)aggrega5on)
– Direct)poin5ng
Aug.)18,)2015
Poptrie:)A)Compressed)Trie)with)Popula5on)Count)
for)Fast)and)Scalable)So<ware)IP)Rou5ng)Table)Lookup
Poptrie)(basic):)2kVary)Mul5way)Trie
Aug.)18,)2015
Poptrie:)A)Compressed)Trie)with)Popula5on)Count)
for)Fast)and)Scalable)So<ware)IP)Rou5ng)Table)Lookup
	
	
d
c
b
0
1
e
0
1
a
0
0.0.0.0/0
128.0.0.0/1
64.0.0.0/2
64.0.0.0/3
Radix&Tree
b c c
a a e e
Internal)node
Leaf)node
00 01 10 11
00 01 10 11
2k=ary&Mul@way&Trie&(k=2)
Push)the)next)hop)informa5on)in)the)internal)nodes)
to)leaf)nodes
0.0.0.0/2
X)X)X)X)X)X
Key)IP)address
MSB
00
01
10
11
chunk
b
Poptrie)(basic):)Pointer)Compression)
with)Popula5on)Count)(1/2)
Aug.)18,)2015
Poptrie:)A)Compressed)Trie)with)Popula5on)Count)
for)Fast)and)Scalable)So<ware)IP)Rou5ng)Table)Lookup
	
0 1 0 0
vector)†
b
Internal)node
pointer pointer
base0 base1
c c
b
0 0 0 0
vector
pointer pointer
base0 base1
Internal)node
Array)of)descendant)
internal)nodes
Array)of)descendant)
leaf)nodes
00 01 10 11
b c c
a a e e
Internal)node
Leaf)node
00 01 10 11
00 01 10 11
2k=ary&Mul@way&Trie&(k=2) Pointer&compression&with&bit=vector&and&array
†)in)lisle)endian
00 01 10 11
b
Poptrie)(basic):)Pointer)Compression)
with)Popula5on)Count)(2/2)
Aug.)18,)2015
Poptrie:)A)Compressed)Trie)with)Popula5on)Count)
for)Fast)and)Scalable)So<ware)IP)Rou5ng)Table)Lookup
	
0 1 0 0
vector)†
b
Internal)node
pointer pointer
base0 base1
c c
Internal
Leaf
00 01 10 11
Pointer&compression&with&bit=vector&and&array
b
0 1 0 0
vector)†
b
Internal)node
pointer pointer
base0 base1
c c
Internal
Leaf
Array&compression&with&popula@on&count
†)in)lisle)endian
Index:)#)of)1’s)bits)in)the)least)
significant)N+1)bits)of)vector)(V1)
Index:)#)of)0’s)bits)in)the)least)
significant)N+1)bits)of)vector)(V1)
Coun5ng)#)of)1s:)Use)x86’s)popcnt)instruc5on
N:)Value)of)the)chunk
N= 00 01 10 11 00 01 10 11N=
Poptrie
•  Basic)algorithm)
– Mul5way)trie)
– Pointer)compression)with)popula5on)count)
•  Extensions&
– Compression)with)leaf)bitVvector)
– Route)aggrega5on)
– Direct)poin5ng
Aug.)18,)2015
Poptrie:)A)Compressed)Trie)with)Popula5on)Count)
for)Fast)and)Scalable)So<ware)IP)Rou5ng)Table)Lookup
Poptrie:)Compression)with)LeafVVector
Aug.)18,)2015
Poptrie:)A)Compressed)Trie)with)Popula5on)Count)
for)Fast)and)Scalable)So<ware)IP)Rou5ng)Table)Lookup
	
d
c
b
0
1
e
0
1
a
0
0.0.0.0/0
128.0.0.0/1
64.0.0.0/2
64.0.0.0/3
Radix&Tree
b c c
a a e e
Internal)node
Leaf)node
00 01 10 11
00 01 10 11
2k=ary&Mul@way&Trie&(k=2)
A)problem)with)the)basic)data)structure:)Redundant)leaf)nodes)
V  for)prefixes)that)do)not)match)kVbit)boundary)
V  e.g.,)/1)(/7,)etc.)as)well))may)create)32)redundant)leaf)nodes)when)k=6)
V  for)holeVpunched)prefixes)
0.0.0.0/2
Poptrie:)Compression)with)LeafVVector
Aug.)18,)2015
Poptrie:)A)Compressed)Trie)with)Popula5on)Count)
for)Fast)and)Scalable)So<ware)IP)Rou5ng)Table)Lookup
	
b
0 1 0 0
vector)†
b
Internal)node
pointer pointer
base0 base1
c c
Internal
Leaf
Poptrie&(basic)
†)in)lisle)endian
b
0 1 0 0
vector)†
b
Internal)node
pointer pointer
base0 base1
c c
Internal
Leaf
Poptrie&with&leaf=vector&(leafvec)
1 0 1 0
leafvec)†
Index:)#)of)1’s)bits)in)the)least)
significant)N+1)bits)of)leafvec'(V1)
Poptrie:)Route)Aggrega5on
Aug.)18,)2015
Poptrie:)A)Compressed)Trie)with)Popula5on)Count)
for)Fast)and)Scalable)So<ware)IP)Rou5ng)Table)Lookup
	
b
0 1 0 0
vector)†
b
Internal)node
pointer pointer
base0 base1
c
Internal
Leaf
Poptrie&with&leaf=vector&(leafvec)
1 0 1 0
leafvec)†
b
0 1 0 0
vector)†
x’
Internal)node
pointer pointer
base0 base1
Internal
Leaf
1 0 0 0
leafvec)†
Poptrie&with&route&aggrega@on
When)the)next)hop)info.)of)b)and)c)is)iden5cal;)
e.g.,)
)b:)prefix)0.0.0.0/2,)next)hop)X)
)c:)prefix)128.0.0.0/1,)next)hop)X
Aggregate)b)and)c)to)x’)
(x’:)prefix)aggregated)[0.0.0.0/0],)next)hop)X)
†)in)lisle)endian
Poptrie:)Direct)Poin5ng
Aug.)18,)2015
Poptrie:)A)Compressed)Trie)with)Popula5on)Count)
for)Fast)and)Scalable)So<ware)IP)Rou5ng)Table)Lookup
	
Extract)and)lookup)s)bits)at)the)first)stage)(like)other)algorithms)such)as)DXR)
0.0.0.0/18
0.0.64.0/18
192.0.0.0/18
N.B.,)illustrated)the)case)of)s)=)18
0.0.128.0/18
1
1
0
flag:)leaf)(0))or)internal)node)(1)
leaf0
pointer
pointer
leaf
TopVlevel)array:)Array)of)length)2s
Internal)node
Internal)node
Poptriex):)Poptrie)with)s'=)x
Implementa5on
•  Data)size)
– Internal)node)(with)leafvec):)24)bytes)
•  vector,)leafvec:)8)bytes)(k=6))
•  base0,)base1:)4)bytes)
–  Index)in)the)con5guous)array†)instead)of)memory)address)
– Leaf)node:)2)bytes)
– Direct)poin5ng)entry:)4)bytes)
•  Code)in)C:)hsps://github.com/pixos/poptrie)
Aug.)18,)2015
Poptrie:)A)Compressed)Trie)with)Popula5on)Count)
for)Fast)and)Scalable)So<ware)IP)Rou5ng)Table)Lookup
	
†)The)con5guous)arrays)of)the)internal)and)leaf)nodes)are)managed)by)the)buddy)
memory)allocator)to)allocate)an)array)of)descendant)nodes.)
Evalua5ons
•  Effect)of)Extensions)in)Poptrie)
•  Mul5core)Scalability)
•  Comparison)with)Other)Algorithms)
–  Average)lookup)rate)
•  Traffic)pasern:)Sequen5al,)repeated,)random,)real)trace)
•  Rou5ng)tables:)3)private,)32)public,)4)synthe5c)
–  CPU)cycles)per)lookup)
•  Update)
•  Performance)in)IPv6
Aug.)18,)2015
Poptrie:)A)Compressed)Trie)with)Popula5on)Count)
for)Fast)and)Scalable)So<ware)IP)Rou5ng)Table)Lookup
Equipment)for)the)evalua5ons:)
Intel(R))Core)i7)4770K)(3.9)GHz,)8)MiB)cache))
with)four)8)GB)DDR3V1866)RAM)
(using)a)single)core))
Effect)of)Extensions)in)Poptrie
Algorithm&/&
Extensions
s #&of&internal&
nodes
#&of&leaves Memory&
[MiB]&
Rate&[Mlps]
Radix – – – 30.48 8.82
Poptrie)(basic))
without)route)
aggrega5on
0 64,009 4,032,568 8.67 87.71
16 172,110 10,862,901 23.60 130.72
18 61,282 3,911,422 9.40 170.69
Poptrie)(leafvec))
without)route)
aggrega5on
0 64,009 280,673 2.00 89.15
16 172,110 347,449 4.85 154.33
18 61,282 269,320 2.91 191.95
Poptrie 0 43,191 263,381 1.49 96.27
16 86,171 274,145 2.75 198.28
18 40,760 245,034 2.40 240.52
1.)leafvec)significantly)contributes)the)memory)footprint)reduc5on.
Rou5ng)table:)Backbone)core)router)of)5erV1)ISP)(Jan.)9,)2015),)Traffic)pasern:)Random
2.)Route)aggrega5on)contributes)to)reduce)the)internal)nodes)(i.e.,)average)depth).
Mlps)
=)Million)lookups)
)))per)second
Comparison)with)Other)Algorithms)
(for)random)traffic)pasern)
Algorithm Memory&[MiB] Rate&[Mlps]
Radix 30.48 8.82
Tree)BitMap 2.62 56.24
Tree)BitMap)(64Vary) 3.10 61.61
SAIL 44.24 158.22
D16R 1.16 116.63
D18R 1.91 179.92
Poptrie16 2.75 198.28
Poptrie18 2.40 240.52
Aug.)18,)2015
Poptrie:)A)Compressed)Trie)with)Popula5on)Count)
for)Fast)and)Scalable)So<ware)IP)Rou5ng)Table)Lookup
Rou5ng)table:)Backbone)core)router)of)5erV1)ISP)(Jan.)9,)2015),)Traffic)pasern:)Random
Poptrie18)runs)1.34–27.3x)faster)than)the)other)algorithms
PerVLookup)Performance)Analysis
Aug.)18,)2015
Poptrie:)A)Compressed)Trie)with)Popula5on)Count)
for)Fast)and)Scalable)So<ware)IP)Rou5ng)Table)Lookup
Performance)evalua5on)machine)
with)my)singleVtask)opera5ng)system
c0)=)rdpmc()
c1)=)rdpmc()
r)=)lookup(key)
key)=)recv()
send(r,)c1)V)c0)
Rx
Tx
NIC
UDP)
header
key
UDP)
header
r,)c1)V)c0
Linux)machine
rdpmc):)read)performance)monitoring)counter)
(i.e.,)CPU)cycles))
UDP)packet
UDP)packet
Measured)CPU)cycles)(c1)V)c0))
for)224)random)keys)
(with)the)same)random)seed)
for)different)algorithms))
PerVLookup)Performance)Analysis:)
Cumula5ve)Distribu5on)of)CPU)Cycles
Aug.)18,)2015
Poptrie:)A)Compressed)Trie)with)Popula5on)Count)for)Fast)and)
Scalable)So<ware)IP)Rou5ng)Table)Lookup
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
0 50 100 150 200 250 300 350
CDF
CPU cycles per lookup
Poptrie18
D18R
Poptrie16
D16R
SAIL
It)is)worth)to)analyze)perVlookup)performance)than)the)average!
PerVLookup)Performance)Analysis:)
Binary)Radix)Depth
Aug.)18,)2015
Poptrie:)A)Compressed)Trie)with)Popula5on)Count)for)Fast)and)
Scalable)So<ware)IP)Rou5ng)Table)Lookup
d
c
b
0
10
1
a
0
0.0.0.0/0
128.0.0.0/1
64.0.0.0/3
Radix&Tree
0.0.0.0/2
Binary)radix)depth)=)Search)depth)in)the)radix)tree)
•  0.0.0.0/2):)2
•  64.0.0.0/3):)3)
•  96.0.0.0/3&:&2&&(matching)0.0.0.0/0)&
•  128.0.0.0/1):)1
0 4 8 12 16 20 24 28 32
Prefix length
4
8
12
16
20
24
28
32
Binaryradixdepth
100
101
102
103
104
105
106
10
7
10
8
109
Rou5ng)table:)Backbone)core)router)of)5erV1)ISP)(Jan.)9,)2015)
PerVLookup)Performance)
at)Different)Binary)Radix)Depth
Aug.)18,)2015
Poptrie:)A)Compressed)Trie)with)Popula5on)Count)
for)Fast)and)Scalable)So<ware)IP)Rou5ng)Table)Lookup
0
50
100
150
200
250
300
350
2 4 6 8 10 12 14 16 18 20 22 24 26
CPUcyclesperlookup
Binary radix depth
D16R
0
50
100
150
200
250
300
350
2 4 6 8 10 12 14 16 18 20 22 24 26
CPUcyclesperlookup
Binary radix depth
D18R
0
50
100
150
200
250
300
350
2 4 6 8 10 12 14 16 18 20 22 24 26
CPUcyclesperlookup
Binary radix depth
Poptrie16
0
50
100
150
200
250
300
350
2 4 6 8 10 12 14 16 18 20 22 24 26
CPUcyclesperlookup Binary radix depth
Poptrie18
0
50
100
150
200
250
300
350
2 4 6 8 10 12 14 16 18 20 22 24 26
CPUcyclesperlookup
Binary radix depth
SAIL
Wicks:)5th/95th)percen5les)
Bodies:)25th/75th)percen5les)
Internal)bar:)Median
(3Vlevel)trie) (RangeVbase) (RangeVbase)
Rou5ng)table:)Backbone)core)router)of)5erV1)ISP)(Jan.)9,)2015)
PerVLookup)Performance)
at)Different)Binary)Radix)Depth
Aug.)18,)2015
Poptrie:)A)Compressed)Trie)with)Popula5on)Count)
for)Fast)and)Scalable)So<ware)IP)Rou5ng)Table)Lookup
0
50
100
150
200
250
300
350
2 4 6 8 10 12 14 16 18 20 22 24 26
CPUcyclesperlookup
Binary radix depth
D16R
0
50
100
150
200
250
300
350
2 4 6 8 10 12 14 16 18 20 22 24 26
CPUcyclesperlookup
Binary radix depth
D18R
0
50
100
150
200
250
300
350
2 4 6 8 10 12 14 16 18 20 22 24 26
CPUcyclesperlookup
Binary radix depth
Poptrie16
0
50
100
150
200
250
300
350
2 4 6 8 10 12 14 16 18 20 22 24 26
CPUcyclesperlookup Binary radix depth
Poptrie18
0
50
100
150
200
250
300
350
2 4 6 8 10 12 14 16 18 20 22 24 26
CPUcyclesperlookup
Binary radix depth
SAIL
Wicks:)5th/95th)percen5les)
Bodies:)25th/75th)percen5les)
Internal)bar:)Median
(3Vlevel)trie) (RangeVbase) (RangeVbase)
Rou5ng)table:)Backbone)core)router)of)5erV1)ISP)(Jan.)9,)2015)
O(1) O(1) O(1)
O(1) O(1)
binary)search binary)
search
2nd)level
Rou5ng)table:)Backbone)core)router)of)5erV1)ISP)(Jan.)9,)2015)
PerVLookup)Performance)
at)Different)Binary)Radix)Depth
Aug.)18,)2015
Poptrie:)A)Compressed)Trie)with)Popula5on)Count)
for)Fast)and)Scalable)So<ware)IP)Rou5ng)Table)Lookup
0
50
100
150
200
250
300
350
2 4 6 8 10 12 14 16 18 20 22 24 26
CPUcyclesperlookup
Binary radix depth
D16R
0
50
100
150
200
250
300
350
2 4 6 8 10 12 14 16 18 20 22 24 26
CPUcyclesperlookup
Binary radix depth
D18R
0
50
100
150
200
250
300
350
2 4 6 8 10 12 14 16 18 20 22 24 26
CPUcyclesperlookup
Binary radix depth
Poptrie16
0
50
100
150
200
250
300
350
2 4 6 8 10 12 14 16 18 20 22 24 26
CPUcyclesperlookup Binary radix depth
Poptrie18
0
50
100
150
200
250
300
350
2 4 6 8 10 12 14 16 18 20 22 24 26
CPUcyclesperlookup
Binary radix depth
SAIL
Wicks:)5th/95th)percen5les)
Bodies:)25th/75th)percen5les)
Internal)bar:)Median
≤)172)cycles
>)234)cycles
Average)Lookup)Rate:)
Random)vs.)Real)Traffic
Aug.)18,)2015
Poptrie:)A)Compressed)Trie)with)Popula5on)Count)
for)Fast)and)Scalable)So<ware)IP)Rou5ng)Table)Lookup
0
50
100
150
200
250
300
350
Tree BitMap SAIL D16R Poptrie16 D18R Poptrie18
Lookuprate[Mlps]
Data Structure and Algorithm
0
50
100
150
200
250
300
350
Tree BitMap SAIL D16R Poptrie16 D18R Poptrie18
Lookuprate[Mlps]
Data Structure and Algorithm
For)random)traffic For)real)traffic
(*))Rou5ng)table)is)dumped)at)an)AS)border)router)of)WIDE)project,)
and)traffic)trace)is)captured)at)the)transit)link)of)the)router.
Good)for)
repeated)paserns
Not)good)for)longer)
prefixes)(IGP)routes)
Bad)for)random
Binary&radix&depth Random Real
>18 22.1% 32.5%
>24 1.7% 21.8% Many)packets)
go)to)IGP)routes.
Performance)on)Large)Rou5ng)Tables
Algorithm SYN1&(with&764,847&routes) SYN2&(with&885,645&routes)
SAIL 102.86)Mlps N/A)(Overflowed)
D18R)(modified) 115.45)Mlps 102.59)Mlps
Poptrie18 188.02)Mlps 174.42)Mlps
Aug.)18,)2015
Poptrie:)A)Compressed)Trie)with)Popula5on)Count)
for)Fast)and)Scalable)So<ware)IP)Rou5ng)Table)Lookup
SYN1:)
•  /0V15):)split)into)four)prefixes)
•  /16V23):)split)into)two)prefixes)
SYN2:)
•  /0V15):)split)into)eight)prefixes)
•  /16V19):)split)into)four)prefixes)
•  /20V23):)split)into)two)prefixes)
Two)synthe5c)datasets)from)the)rou5ng)table)of)a)backbone)
core)router)of)5erV1)ISP
Poptrie18)is)1.63–1.70x)faster)than)D18R.)
Traffic)pasern:)Random
Conclusion
•  Poptrie:)Mul5way)trie)for)IP)rou5ng)table)
lookup)in)so<ware)
– Small)memory)footprint)with)popula5on)count)
•  e.g.,)2.4)MiB)for)a)global)5erV1)ISP’s)full)route)
– Good)performance)through)comprehensive)
evalua5on)
•  4–578%)faster)than)other)stateVofVtheVart)technologies)
–  Private)and)public)IPv4/IPv6)rou5ng)tables)
–  FutureVenvisioned)800K+)IPv4)routes)
•  Advantageous)for)longer)prefixes)
–  demonstrated)through)perVlookup)performance)analysis)
Aug.)18,)2015
Poptrie:)A)Compressed)Trie)with)Popula5on)Count)
for)Fast)and)Scalable)So<ware)IP)Rou5ng)Table)Lookup
BACKUP&SLIDES
Aug.)18,)2015
Poptrie:)A)Compressed)Trie)with)Popula5on)Count)
for)Fast)and)Scalable)So<ware)IP)Rou5ng)Table)Lookup
Tree)BitMap:)Succinct)Data)Structure
Aug.)18,)2015
Poptrie:)A)Compressed)Trie)with)Popula5on)Count)for)Fast)and)
Scalable)So<ware)IP)Rou5ng)Table)Lookup
1
0 1
1 1
1
d
c
b
0
1
e
0
1
a
0
0.0.0.0/0
128.0.0.0/1
0.0.0.0/2 64.0.0.0/2
64.0.0.0/3
Radix&Tree
d c b e
0 0 Result)pointer
Child)pointer
)Mul5way)trie
Node)array
Mul5Vbit)node
Tree&BitMap
SAIL:)3Vlevel)Mul5way)Trie
Aug.)18,)2015
Poptrie:)A)Compressed)Trie)with)Popula5on)Count)for)Fast)and)
Scalable)So<ware)IP)Rou5ng)Table)Lookup
2nd)level:)28Vary)
/0V16
/17V24
/25V32
3rd)level:)28Vary
1st)level:)216Vary
#)in)L1/L2)cache
#)in)L3)cache/DRAM
#)in)DRAM
")Slow&when&cache&miss&occurs)
DXR:)Binary)Search)in)Range)Table
Aug.)18,)2015
Poptrie:)A)Compressed)Trie)with)Popula5on)Count)for)Fast)and)
Scalable)So<ware)IP)Rou5ng)Table)Lookup
0.0.0.0/18
0.0.64.0/18
192.0.0.0/18 192.0.0.0 a
192.0.2.0 b
192.0.3.0 a
Next)hopStar5ng)at
Directly&indexed&table
=)192.0.0.0V192.0.1.255
=)192.0.2.0V192.0.2.255
=)192.0.3.0V192.0.63.255
1))O(1))lookup
2))Binary)search)
for)matching)range)
(within)L1)cache)line(s)))
Range&table
N.B.,)illustrated)the)case)of)X)=)18
" Slow&for&large&range&tables&
(e.g.,)a)cluster)of)IGP)routes))
LockVfree)Update)Procedure
Internal node
1 1 0 0
vector base0
N[2048] N[2049] N[2050]
31290 0 0 1
leafvec base1
2048
N
L
1
L[3129]
base1
1024
Node array (X) Top of the marked internal nodes
Parent to be replaced
Figure 6: The lock-free update procedure to th
internal node.
Updated prefix
Updated leaves
Replace these
internal nodes
Top of the marked triangles
Mul5core)Scalability)Evalua5on)for)
Random)Traffic
Aug.)18,)2015
Poptrie:)A)Compressed)Trie)with)Popula5on)Count)for)Fast)and)
Scalable)So<ware)IP)Rou5ng)Table)Lookup
0
100
200
300
400
500
600
700
800
900
1000
1 2 3 4
Lookuprate[Mlps]
# of threads
REAL-Tier1-A
REAL-Tier1-B
REALVTier1VA:)Global)TierV1’s)BGP)Router)
REALVTier1VB:)Domes5c)ISP’s)BGP)Router
Performance)on)IPv6)Rou5ng)Table
Aug.)18,)2015
Poptrie:)A)Compressed)Trie)with)Popula5on)Count)
for)Fast)and)Scalable)So<ware)IP)Rou5ng)Table)Lookup
Algorithm Average&Lookup&
rate&[Mlps]
SAIL N/A)(no)support)for)more)
specific)routes)than)/64)
D16R 163.07
D18R 169.91
Poptrie16 209.84
Poptrie18 211.32
•  On)a)rou5ng)table)dumped)at)a)5erV1)ISP)(with)20,440)prefixes))
•  For)2^32)random)addresses)within)2000::/8)
Poptrie18)is)1.24x)faster)than)D18R.)

Contenu connexe

Tendances

Linux Networking Explained
Linux Networking ExplainedLinux Networking Explained
Linux Networking ExplainedThomas Graf
 
BPF: Tracing and more
BPF: Tracing and moreBPF: Tracing and more
BPF: Tracing and moreBrendan Gregg
 
Java Performance Analysis on Linux with Flame Graphs
Java Performance Analysis on Linux with Flame GraphsJava Performance Analysis on Linux with Flame Graphs
Java Performance Analysis on Linux with Flame GraphsBrendan Gregg
 
Continuous Go Profiling & Observability
Continuous Go Profiling & ObservabilityContinuous Go Profiling & Observability
Continuous Go Profiling & ObservabilityScyllaDB
 
Hardware & Software Platforms for HPC, AI and ML
Hardware & Software Platforms for HPC, AI and MLHardware & Software Platforms for HPC, AI and ML
Hardware & Software Platforms for HPC, AI and MLinside-BigData.com
 
BPF Internals (eBPF)
BPF Internals (eBPF)BPF Internals (eBPF)
BPF Internals (eBPF)Brendan Gregg
 
[232] 성능어디까지쥐어짜봤니 송태웅
[232] 성능어디까지쥐어짜봤니 송태웅[232] 성능어디까지쥐어짜봤니 송태웅
[232] 성능어디까지쥐어짜봤니 송태웅NAVER D2
 
OpenStackでも重要な役割を果たすPacemakerを知ろう!
OpenStackでも重要な役割を果たすPacemakerを知ろう!OpenStackでも重要な役割を果たすPacemakerを知ろう!
OpenStackでも重要な役割を果たすPacemakerを知ろう!ksk_ha
 
YOW2021 Computing Performance
YOW2021 Computing PerformanceYOW2021 Computing Performance
YOW2021 Computing PerformanceBrendan Gregg
 
QEMU Disk IO Which performs Better: Native or threads?
QEMU Disk IO Which performs Better: Native or threads?QEMU Disk IO Which performs Better: Native or threads?
QEMU Disk IO Which performs Better: Native or threads?Pradeep Kumar
 
파이콘 한국 2019 - 파이썬으로 서버를 극한까지 끌어다 쓰기: Async I/O의 밑바닥
파이콘 한국 2019 - 파이썬으로 서버를 극한까지 끌어다 쓰기: Async I/O의 밑바닥파이콘 한국 2019 - 파이썬으로 서버를 극한까지 끌어다 쓰기: Async I/O의 밑바닥
파이콘 한국 2019 - 파이썬으로 서버를 극한까지 끌어다 쓰기: Async I/O의 밑바닥Seomgi Han
 
Kernel Recipes 2019 - Faster IO through io_uring
Kernel Recipes 2019 - Faster IO through io_uringKernel Recipes 2019 - Faster IO through io_uring
Kernel Recipes 2019 - Faster IO through io_uringAnne Nicolas
 
OpenStackを使用したGPU仮想化IaaS環境 事例紹介
OpenStackを使用したGPU仮想化IaaS環境 事例紹介OpenStackを使用したGPU仮想化IaaS環境 事例紹介
OpenStackを使用したGPU仮想化IaaS環境 事例紹介VirtualTech Japan Inc.
 
How Linux Processes Your Network Packet - Elazar Leibovich
How Linux Processes Your Network Packet - Elazar LeibovichHow Linux Processes Your Network Packet - Elazar Leibovich
How Linux Processes Your Network Packet - Elazar LeibovichDevOpsDays Tel Aviv
 
Apache Spark on K8S Best Practice and Performance in the Cloud
Apache Spark on K8S Best Practice and Performance in the CloudApache Spark on K8S Best Practice and Performance in the Cloud
Apache Spark on K8S Best Practice and Performance in the CloudDatabricks
 
Apache kafka performance(latency)_benchmark_v0.3
Apache kafka performance(latency)_benchmark_v0.3Apache kafka performance(latency)_benchmark_v0.3
Apache kafka performance(latency)_benchmark_v0.3SANG WON PARK
 

Tendances (20)

Linux Networking Explained
Linux Networking ExplainedLinux Networking Explained
Linux Networking Explained
 
BPF: Tracing and more
BPF: Tracing and moreBPF: Tracing and more
BPF: Tracing and more
 
Java Performance Analysis on Linux with Flame Graphs
Java Performance Analysis on Linux with Flame GraphsJava Performance Analysis on Linux with Flame Graphs
Java Performance Analysis on Linux with Flame Graphs
 
Continuous Go Profiling & Observability
Continuous Go Profiling & ObservabilityContinuous Go Profiling & Observability
Continuous Go Profiling & Observability
 
eBPF/XDP
eBPF/XDP eBPF/XDP
eBPF/XDP
 
Hardware & Software Platforms for HPC, AI and ML
Hardware & Software Platforms for HPC, AI and MLHardware & Software Platforms for HPC, AI and ML
Hardware & Software Platforms for HPC, AI and ML
 
BPF Internals (eBPF)
BPF Internals (eBPF)BPF Internals (eBPF)
BPF Internals (eBPF)
 
[232] 성능어디까지쥐어짜봤니 송태웅
[232] 성능어디까지쥐어짜봤니 송태웅[232] 성능어디까지쥐어짜봤니 송태웅
[232] 성능어디까지쥐어짜봤니 송태웅
 
OpenStackでも重要な役割を果たすPacemakerを知ろう!
OpenStackでも重要な役割を果たすPacemakerを知ろう!OpenStackでも重要な役割を果たすPacemakerを知ろう!
OpenStackでも重要な役割を果たすPacemakerを知ろう!
 
YOW2021 Computing Performance
YOW2021 Computing PerformanceYOW2021 Computing Performance
YOW2021 Computing Performance
 
QEMU Disk IO Which performs Better: Native or threads?
QEMU Disk IO Which performs Better: Native or threads?QEMU Disk IO Which performs Better: Native or threads?
QEMU Disk IO Which performs Better: Native or threads?
 
Ceph issue 해결 사례
Ceph issue 해결 사례Ceph issue 해결 사례
Ceph issue 해결 사례
 
ELK Stack
ELK StackELK Stack
ELK Stack
 
파이콘 한국 2019 - 파이썬으로 서버를 극한까지 끌어다 쓰기: Async I/O의 밑바닥
파이콘 한국 2019 - 파이썬으로 서버를 극한까지 끌어다 쓰기: Async I/O의 밑바닥파이콘 한국 2019 - 파이썬으로 서버를 극한까지 끌어다 쓰기: Async I/O의 밑바닥
파이콘 한국 2019 - 파이썬으로 서버를 극한까지 끌어다 쓰기: Async I/O의 밑바닥
 
Kernel Recipes 2019 - Faster IO through io_uring
Kernel Recipes 2019 - Faster IO through io_uringKernel Recipes 2019 - Faster IO through io_uring
Kernel Recipes 2019 - Faster IO through io_uring
 
DPDK In Depth
DPDK In DepthDPDK In Depth
DPDK In Depth
 
OpenStackを使用したGPU仮想化IaaS環境 事例紹介
OpenStackを使用したGPU仮想化IaaS環境 事例紹介OpenStackを使用したGPU仮想化IaaS環境 事例紹介
OpenStackを使用したGPU仮想化IaaS環境 事例紹介
 
How Linux Processes Your Network Packet - Elazar Leibovich
How Linux Processes Your Network Packet - Elazar LeibovichHow Linux Processes Your Network Packet - Elazar Leibovich
How Linux Processes Your Network Packet - Elazar Leibovich
 
Apache Spark on K8S Best Practice and Performance in the Cloud
Apache Spark on K8S Best Practice and Performance in the CloudApache Spark on K8S Best Practice and Performance in the Cloud
Apache Spark on K8S Best Practice and Performance in the Cloud
 
Apache kafka performance(latency)_benchmark_v0.3
Apache kafka performance(latency)_benchmark_v0.3Apache kafka performance(latency)_benchmark_v0.3
Apache kafka performance(latency)_benchmark_v0.3
 

Similaire à Poptrie: A Compressed Trie with Population Count for Fast and Scalable Software IP Routing Table Lookup

#MENT: Online & Mobile Trends - India & Worldwide by Gurmit Singh, MD Yahoo I...
#MENT: Online & Mobile Trends - India & Worldwide by Gurmit Singh, MD Yahoo I...#MENT: Online & Mobile Trends - India & Worldwide by Gurmit Singh, MD Yahoo I...
#MENT: Online & Mobile Trends - India & Worldwide by Gurmit Singh, MD Yahoo I...tiemumbai
 
ใบความรู้ที่ 1 ความรู้เกี่ยวกับเว็บไซต์
ใบความรู้ที่ 1 ความรู้เกี่ยวกับเว็บไซต์ใบความรู้ที่ 1 ความรู้เกี่ยวกับเว็บไซต์
ใบความรู้ที่ 1 ความรู้เกี่ยวกับเว็บไซต์พ่อ รักน้องต้นข้าว
 
Python gis mapping
Python gis mappingPython gis mapping
Python gis mappingkikocorreoso
 
Software libre y modelos de programación en la investigación con supercomputa...
Software libre y modelos de programación en la investigación con supercomputa...Software libre y modelos de programación en la investigación con supercomputa...
Software libre y modelos de programación en la investigación con supercomputa...Andrés Gómez
 
Estándares tecnológicos para la interoperabilidad en la administración inteli...
Estándares tecnológicos para la interoperabilidad en la administración inteli...Estándares tecnológicos para la interoperabilidad en la administración inteli...
Estándares tecnológicos para la interoperabilidad en la administración inteli...Luis Bermudez
 
Reutilización de datos procedentes de tarjetas sin contacto en el ámbito del ...
Reutilización de datos procedentes de tarjetas sin contacto en el ámbito del ...Reutilización de datos procedentes de tarjetas sin contacto en el ámbito del ...
Reutilización de datos procedentes de tarjetas sin contacto en el ámbito del ...Luis Criado
 
Klink-2: integrating multiple web sources to generate semantic topic networks
 Klink-2: integrating multiple web sources to generate semantic topic networks Klink-2: integrating multiple web sources to generate semantic topic networks
Klink-2: integrating multiple web sources to generate semantic topic networksFrancesco Osborne
 
Website qualityaddressingqualitygaps2014
Website qualityaddressingqualitygaps2014Website qualityaddressingqualitygaps2014
Website qualityaddressingqualitygaps2014Luisa Mich
 
Situación de las iniciativas de Open Data internacionales (y algunas recomen...
Situación de las iniciativas de Open Data internacionales (y algunas recomen...Situación de las iniciativas de Open Data internacionales (y algunas recomen...
Situación de las iniciativas de Open Data internacionales (y algunas recomen...Oscar Corcho
 
Las TIC y su aporte al Desarrollo de la Sociedad de la Informacion
Las TIC y su aporte al Desarrollo de la Sociedad de la InformacionLas TIC y su aporte al Desarrollo de la Sociedad de la Informacion
Las TIC y su aporte al Desarrollo de la Sociedad de la InformacionProGobernabilidad Perú
 
Training Autocad Indonesia
Training Autocad IndonesiaTraining Autocad Indonesia
Training Autocad IndonesiaEdi Supriyanto
 
Esri Open Platform
Esri Open PlatformEsri Open Platform
Esri Open PlatformEsri España
 

Similaire à Poptrie: A Compressed Trie with Population Count for Fast and Scalable Software IP Routing Table Lookup (19)

#MENT: Online & Mobile Trends - India & Worldwide by Gurmit Singh, MD Yahoo I...
#MENT: Online & Mobile Trends - India & Worldwide by Gurmit Singh, MD Yahoo I...#MENT: Online & Mobile Trends - India & Worldwide by Gurmit Singh, MD Yahoo I...
#MENT: Online & Mobile Trends - India & Worldwide by Gurmit Singh, MD Yahoo I...
 
ใบความรู้ที่ 1 ความรู้เกี่ยวกับเว็บไซต์
ใบความรู้ที่ 1 ความรู้เกี่ยวกับเว็บไซต์ใบความรู้ที่ 1 ความรู้เกี่ยวกับเว็บไซต์
ใบความรู้ที่ 1 ความรู้เกี่ยวกับเว็บไซต์
 
Python gis mapping
Python gis mappingPython gis mapping
Python gis mapping
 
Software libre y modelos de programación en la investigación con supercomputa...
Software libre y modelos de programación en la investigación con supercomputa...Software libre y modelos de programación en la investigación con supercomputa...
Software libre y modelos de programación en la investigación con supercomputa...
 
Estándares tecnológicos para la interoperabilidad en la administración inteli...
Estándares tecnológicos para la interoperabilidad en la administración inteli...Estándares tecnológicos para la interoperabilidad en la administración inteli...
Estándares tecnológicos para la interoperabilidad en la administración inteli...
 
Reutilización de datos procedentes de tarjetas sin contacto en el ámbito del ...
Reutilización de datos procedentes de tarjetas sin contacto en el ámbito del ...Reutilización de datos procedentes de tarjetas sin contacto en el ámbito del ...
Reutilización de datos procedentes de tarjetas sin contacto en el ámbito del ...
 
Klink-2: integrating multiple web sources to generate semantic topic networks
 Klink-2: integrating multiple web sources to generate semantic topic networks Klink-2: integrating multiple web sources to generate semantic topic networks
Klink-2: integrating multiple web sources to generate semantic topic networks
 
HP E INTEL CONMEMORAN LOS 20 AÑOS DEL CENTRO DE SUPERCOMPUTACIÓN DE GALICIA
 HP E INTEL CONMEMORAN LOS 20 AÑOS DEL CENTRO DE SUPERCOMPUTACIÓN DE GALICIA HP E INTEL CONMEMORAN LOS 20 AÑOS DEL CENTRO DE SUPERCOMPUTACIÓN DE GALICIA
HP E INTEL CONMEMORAN LOS 20 AÑOS DEL CENTRO DE SUPERCOMPUTACIÓN DE GALICIA
 
Website qualityaddressingqualitygaps2014
Website qualityaddressingqualitygaps2014Website qualityaddressingqualitygaps2014
Website qualityaddressingqualitygaps2014
 
CO2 Re-use
CO2 Re-use CO2 Re-use
CO2 Re-use
 
Situación de las iniciativas de Open Data internacionales (y algunas recomen...
Situación de las iniciativas de Open Data internacionales (y algunas recomen...Situación de las iniciativas de Open Data internacionales (y algunas recomen...
Situación de las iniciativas de Open Data internacionales (y algunas recomen...
 
Análisis de datos en mundos virtuales educativos
Análisis de datos en mundos virtuales educativosAnálisis de datos en mundos virtuales educativos
Análisis de datos en mundos virtuales educativos
 
Presentacion3
Presentacion3Presentacion3
Presentacion3
 
Las TIC y su aporte al Desarrollo de la Sociedad de la Informacion
Las TIC y su aporte al Desarrollo de la Sociedad de la InformacionLas TIC y su aporte al Desarrollo de la Sociedad de la Informacion
Las TIC y su aporte al Desarrollo de la Sociedad de la Informacion
 
Azael FernáNdez1
Azael FernáNdez1Azael FernáNdez1
Azael FernáNdez1
 
Training Autocad Indonesia
Training Autocad IndonesiaTraining Autocad Indonesia
Training Autocad Indonesia
 
Esri Open Platform
Esri Open PlatformEsri Open Platform
Esri Open Platform
 
R project nube (1)
R project nube (1)R project nube (1)
R project nube (1)
 
Novedades en CATNIX
Novedades en CATNIXNovedades en CATNIX
Novedades en CATNIX
 

Dernier

Act#3.2_Investigación_Bibliográfica_Comunicación_Equipo.pdf
Act#3.2_Investigación_Bibliográfica_Comunicación_Equipo.pdfAct#3.2_Investigación_Bibliográfica_Comunicación_Equipo.pdf
Act#3.2_Investigación_Bibliográfica_Comunicación_Equipo.pdfXimenaGonzlez95
 
Felipe González - eCommerce Day Chile 2024
Felipe González - eCommerce Day Chile 2024Felipe González - eCommerce Day Chile 2024
Felipe González - eCommerce Day Chile 2024eCommerce Institute
 
PRESENTACION EN SST, plan de trabajo del sistema de seguridad y salud en el t...
PRESENTACION EN SST, plan de trabajo del sistema de seguridad y salud en el t...PRESENTACION EN SST, plan de trabajo del sistema de seguridad y salud en el t...
PRESENTACION EN SST, plan de trabajo del sistema de seguridad y salud en el t...angierangel29072017
 
Mercedes Tomas, Florencia Bianchini - eCommerce Day Chile 2024
Mercedes Tomas, Florencia Bianchini - eCommerce Day Chile 2024Mercedes Tomas, Florencia Bianchini - eCommerce Day Chile 2024
Mercedes Tomas, Florencia Bianchini - eCommerce Day Chile 2024eCommerce Institute
 
Sebastián Iturriaga - eCommerce Day Chile 2024
Sebastián Iturriaga - eCommerce Day Chile 2024Sebastián Iturriaga - eCommerce Day Chile 2024
Sebastián Iturriaga - eCommerce Day Chile 2024eCommerce Institute
 
Modelos comunicacionales. Antonella Castrataro.pdf
Modelos comunicacionales. Antonella Castrataro.pdfModelos comunicacionales. Antonella Castrataro.pdf
Modelos comunicacionales. Antonella Castrataro.pdfnenelli2004
 
Nicolás von Graevenitz, Rodrigo Guajardo, Fabián Müller, Alberto Banano Pardo...
Nicolás von Graevenitz, Rodrigo Guajardo, Fabián Müller, Alberto Banano Pardo...Nicolás von Graevenitz, Rodrigo Guajardo, Fabián Müller, Alberto Banano Pardo...
Nicolás von Graevenitz, Rodrigo Guajardo, Fabián Müller, Alberto Banano Pardo...eCommerce Institute
 
Alexander Rubilar, Enzo Tapia - eCommerce Day Chile 2024
Alexander Rubilar, Enzo Tapia - eCommerce Day Chile 2024Alexander Rubilar, Enzo Tapia - eCommerce Day Chile 2024
Alexander Rubilar, Enzo Tapia - eCommerce Day Chile 2024eCommerce Institute
 
Presupuesto por Resultados de Seguridad Ciudadana .pptx
Presupuesto por Resultados de Seguridad Ciudadana .pptxPresupuesto por Resultados de Seguridad Ciudadana .pptx
Presupuesto por Resultados de Seguridad Ciudadana .pptxhugogabrielac1
 
Enrique Amarista Graterol - eCommerce Day Chile 2024
Enrique Amarista Graterol - eCommerce Day Chile 2024Enrique Amarista Graterol - eCommerce Day Chile 2024
Enrique Amarista Graterol - eCommerce Day Chile 2024eCommerce Institute
 
Francisco Irarrazaval, Marcos Pueyrredon - eCommerce Day Chile 2024
Francisco Irarrazaval, Marcos Pueyrredon - eCommerce Day Chile 2024Francisco Irarrazaval, Marcos Pueyrredon - eCommerce Day Chile 2024
Francisco Irarrazaval, Marcos Pueyrredon - eCommerce Day Chile 2024eCommerce Institute
 
Pablo Scasso - eCommerce Day Chile 2024
Pablo Scasso -  eCommerce Day Chile 2024Pablo Scasso -  eCommerce Day Chile 2024
Pablo Scasso - eCommerce Day Chile 2024eCommerce Institute
 
José Ignacio Calle, Nathalie Jacobs - eCommerce Day Chile 2024
José Ignacio Calle, Nathalie Jacobs - eCommerce Day Chile 2024José Ignacio Calle, Nathalie Jacobs - eCommerce Day Chile 2024
José Ignacio Calle, Nathalie Jacobs - eCommerce Day Chile 2024eCommerce Institute
 
Suiwen He - eCommerce Day Chile 2024
Suiwen He  -  eCommerce  Day  Chile 2024Suiwen He  -  eCommerce  Day  Chile 2024
Suiwen He - eCommerce Day Chile 2024eCommerce Institute
 
Expo Construir 2024 agenda-workshops (2).pdf
Expo Construir 2024 agenda-workshops (2).pdfExpo Construir 2024 agenda-workshops (2).pdf
Expo Construir 2024 agenda-workshops (2).pdfTamanaTablada
 

Dernier (15)

Act#3.2_Investigación_Bibliográfica_Comunicación_Equipo.pdf
Act#3.2_Investigación_Bibliográfica_Comunicación_Equipo.pdfAct#3.2_Investigación_Bibliográfica_Comunicación_Equipo.pdf
Act#3.2_Investigación_Bibliográfica_Comunicación_Equipo.pdf
 
Felipe González - eCommerce Day Chile 2024
Felipe González - eCommerce Day Chile 2024Felipe González - eCommerce Day Chile 2024
Felipe González - eCommerce Day Chile 2024
 
PRESENTACION EN SST, plan de trabajo del sistema de seguridad y salud en el t...
PRESENTACION EN SST, plan de trabajo del sistema de seguridad y salud en el t...PRESENTACION EN SST, plan de trabajo del sistema de seguridad y salud en el t...
PRESENTACION EN SST, plan de trabajo del sistema de seguridad y salud en el t...
 
Mercedes Tomas, Florencia Bianchini - eCommerce Day Chile 2024
Mercedes Tomas, Florencia Bianchini - eCommerce Day Chile 2024Mercedes Tomas, Florencia Bianchini - eCommerce Day Chile 2024
Mercedes Tomas, Florencia Bianchini - eCommerce Day Chile 2024
 
Sebastián Iturriaga - eCommerce Day Chile 2024
Sebastián Iturriaga - eCommerce Day Chile 2024Sebastián Iturriaga - eCommerce Day Chile 2024
Sebastián Iturriaga - eCommerce Day Chile 2024
 
Modelos comunicacionales. Antonella Castrataro.pdf
Modelos comunicacionales. Antonella Castrataro.pdfModelos comunicacionales. Antonella Castrataro.pdf
Modelos comunicacionales. Antonella Castrataro.pdf
 
Nicolás von Graevenitz, Rodrigo Guajardo, Fabián Müller, Alberto Banano Pardo...
Nicolás von Graevenitz, Rodrigo Guajardo, Fabián Müller, Alberto Banano Pardo...Nicolás von Graevenitz, Rodrigo Guajardo, Fabián Müller, Alberto Banano Pardo...
Nicolás von Graevenitz, Rodrigo Guajardo, Fabián Müller, Alberto Banano Pardo...
 
Alexander Rubilar, Enzo Tapia - eCommerce Day Chile 2024
Alexander Rubilar, Enzo Tapia - eCommerce Day Chile 2024Alexander Rubilar, Enzo Tapia - eCommerce Day Chile 2024
Alexander Rubilar, Enzo Tapia - eCommerce Day Chile 2024
 
Presupuesto por Resultados de Seguridad Ciudadana .pptx
Presupuesto por Resultados de Seguridad Ciudadana .pptxPresupuesto por Resultados de Seguridad Ciudadana .pptx
Presupuesto por Resultados de Seguridad Ciudadana .pptx
 
Enrique Amarista Graterol - eCommerce Day Chile 2024
Enrique Amarista Graterol - eCommerce Day Chile 2024Enrique Amarista Graterol - eCommerce Day Chile 2024
Enrique Amarista Graterol - eCommerce Day Chile 2024
 
Francisco Irarrazaval, Marcos Pueyrredon - eCommerce Day Chile 2024
Francisco Irarrazaval, Marcos Pueyrredon - eCommerce Day Chile 2024Francisco Irarrazaval, Marcos Pueyrredon - eCommerce Day Chile 2024
Francisco Irarrazaval, Marcos Pueyrredon - eCommerce Day Chile 2024
 
Pablo Scasso - eCommerce Day Chile 2024
Pablo Scasso -  eCommerce Day Chile 2024Pablo Scasso -  eCommerce Day Chile 2024
Pablo Scasso - eCommerce Day Chile 2024
 
José Ignacio Calle, Nathalie Jacobs - eCommerce Day Chile 2024
José Ignacio Calle, Nathalie Jacobs - eCommerce Day Chile 2024José Ignacio Calle, Nathalie Jacobs - eCommerce Day Chile 2024
José Ignacio Calle, Nathalie Jacobs - eCommerce Day Chile 2024
 
Suiwen He - eCommerce Day Chile 2024
Suiwen He  -  eCommerce  Day  Chile 2024Suiwen He  -  eCommerce  Day  Chile 2024
Suiwen He - eCommerce Day Chile 2024
 
Expo Construir 2024 agenda-workshops (2).pdf
Expo Construir 2024 agenda-workshops (2).pdfExpo Construir 2024 agenda-workshops (2).pdf
Expo Construir 2024 agenda-workshops (2).pdf
 

Poptrie: A Compressed Trie with Population Count for Fast and Scalable Software IP Routing Table Lookup