BROGRAMMING LANGUAGES BROGRAMMING LANGUAGES WANT TO BRO DOWN AND - - PowerPoint PPT Presentation

brogramming languages
SMART_READER_LITE
LIVE PREVIEW

BROGRAMMING LANGUAGES BROGRAMMING LANGUAGES WANT TO BRO DOWN AND - - PowerPoint PPT Presentation

I SAAC S HEFF BROGRAMMING LANGUAGES BROGRAMMING LANGUAGES WANT TO BRO DOWN AND CRUSH CODE? The Bro Network Security Monitor (brolog) BROGRAMMING LANGUAGES PLAN BROGRAMMING LANGUAGES CRUSH CODE? BROGRAMMING LANGUAGES PERFORMANCE


slide-1
SLIDE 1

BROGRAMMING LANGUAGES

ISAAC SHEFF

slide-2
SLIDE 2

WANT TO BRO DOWN AND CRUSH CODE?

BROGRAMMING LANGUAGES

slide-3
SLIDE 3
slide-4
SLIDE 4
slide-5
SLIDE 5
slide-6
SLIDE 6
slide-7
SLIDE 7
slide-8
SLIDE 8
slide-9
SLIDE 9
slide-10
SLIDE 10

The Bro Network Security Monitor (brolog)

slide-11
SLIDE 11

BROGRAMMING LANGUAGES

PLAN

slide-12
SLIDE 12

CRUSH CODE?

BROGRAMMING LANGUAGES

slide-13
SLIDE 13

PERFORMANCE

BROGRAMMING LANGUAGES

slide-14
SLIDE 14

PERFORMANCE

BROGRAMMING LANGUAGES

slide-15
SLIDE 15

PARALLELISM

BROGRAMMING LANGUAGES

slide-16
SLIDE 16

SHOTS

BRO CORE …
 {
 …
 …
 …
 …
 …
 …
 …
 }
 
 …

slide-17
SLIDE 17

BLOCK RECURSIVE OBJECTS

BRO CORE …
 bro = BRO {
 …
 …
 …
 …
 …
 …
 …
 }
 
 …

slide-18
SLIDE 18

WINGMAN

…
 bro = BRO {
 dude = wingman(…)
 …
 …
 …
 …
 …
 …
 }
 
 … BRO CORE

slide-19
SLIDE 19

WINGMAN

…
 bro = BRO {
 dude = wingman(…)
 brah = wingman(…)
 …
 …
 …
 …
 …
 }
 
 … BRO CORE

slide-20
SLIDE 20

KOLLECTIVE EXECUTION GROUPS

nattielite = KEG { 12 bytes }
 bro = BRO {
 dude = wingman(…)
 brah = wingman(…)
 …
 …
 …
 …
 …
 }
 
 … BRO CORE

slide-21
SLIDE 21

KOLLECTIVE EXECUTION GROUPS

nattielite = KEG { 12 bytes }
 bro = BRO {
 dude = wingman(…)
 brah = wingman(…)
 redcup1 <- nattielite(…)
 redcup2 <- nattielite(…)
 …
 …
 …
 }
 
 ho = HO { cassandra(…) } BRO CORE

slide-22
SLIDE 22

KOLLECTIVE EXECUTION GROUPS

nattielite = KEG { 12 bytes }
 bro = BRO {
 dude = wingman(…)
 brah = wingman(…)
 redcup1 <- nattielite(…)
 redcup2 <- nattielite(…)
 redcup2++
 …
 …
 }
 
 … BRO CORE

slide-23
SLIDE 23

KOLLECTIVE EXECUTION GROUPS

nattielite = KEG { 12 bytes }
 bro = BRO {
 dude = wingman(…)
 brah = wingman(…)
 redcup1 <- nattielite(…)
 redcup2 <- nattielite(…)
 redcup2++
 nattielite.BEERRUN(redcup2)
 …
 }
 
 … BRO CORE

slide-24
SLIDE 24

HUGE OBJECTS

nattielite = KEG { 12 bytes }
 bro = BRO {
 dude = wingman(…)
 brah = wingman(…)
 redcup1 <- nattielite(…)
 redcup2 <- nattielite(…)
 redcup2++
 nattielite.BEERRUN(redcup2)
 …
 }
 
 … BRO CORE

slide-25
SLIDE 25

HUGE OBJECTS

nattielite = KEG { 12 bytes }
 bro = BRO {
 dude = wingman(…)
 brah = wingman(…)
 redcup1 <- nattielite(…)
 redcup2 <- nattielite(…)
 redcup2++
 nattielite.BEERRUN(redcup2)
 ho.interact(…)
 }
 
 ho = HO { cassandra(…) } BRO CORE

slide-26
SLIDE 26

CRUSH CODE

nattielite = KEG { 12 bytes }
 bro = BRO {
 dude = wingman(…)
 brah = wingman(…)
 redcup1 <- nattielite(…)
 redcup2 <- nattielite(…)
 redcup2++
 nattielite.BEERRUN(redcup2)
 ho.interact(…)
 }
 
 ho = HO { cassandra(…) } BRO CORE

slide-27
SLIDE 27

CRUSH CODE

nattielite = KEG { 12 bytes }
 bro = BRO {
 dude = wingman(…)
 brah = wingman(…)
 redcup1 <- nattielite(…)
 redcup2 <- nattielite(…)
 redcup2++
 nattielite.BEERRUN(redcup2)
 ho.interact(…)
 }
 
 ho = HO { cassandra(…) } BRO CORE

slide-28
SLIDE 28

CRUSH CODE

nattielite = KEG { 12 bytes }
 bro = BRO {
 dude = wingman(…)
 brah = wingman(…)
 redcup1 <- nattielite(…)
 redcup2 <- nattielite(…)
 redcup2++
 nattielite.BEERRUN(redcup2)
 ho.interact(…)
 }
 
 ho = HO { cassandra(…) } BRO CORE

slide-29
SLIDE 29

CRUSH CODE

nattielite = KEG { 12 bytes }
 bro = BRO { 0xB16B00B5 }
 
 
 
 
 
 
 
 
 
 ho = HO { cassandra(…) } BRO CORE

slide-30
SLIDE 30

BROGRAMMING LANGUAGES

Code you can crush.