SlideShare a Scribd company logo
1 of 35
Download to read offline
A Look at the Network
 Searching for Truth in Distributed Applications
 c. scott andreas (cscotta)
 oscon 2012 - portland oregon




taco.cat/oscon12
taco.cat/oscon12
taco.cat/oscon12
taco.cat/oscon12
THE NETWORK
 IS RELIABLE
taco.cat/oscon12
THE NETWORK IS SECURE
THERE IS ONE ADMINISTRATOR

taco.cat/oscon12
LATENCY IS ZERO
      BANDWIDTH IS INFINITE

taco.cat/oscon12
THE NETWORK IS
     HOMOGENOUS
 TOPOLOGY DOESN’T CHANGE
taco.cat/oscon12
TRANSPORT
          COST IS ZERO
taco.cat/oscon12
where can i buy that?


taco.cat/oscon12
[ another approach ]


taco.cat/oscon12
taco.cat/oscon12
taco.cat/oscon12
taco.cat/oscon12
taco.cat/oscon12
NETWORK + YOUR APPS
       ARE A GRAPH

taco.cat/oscon12
taco.cat/oscon12
YEAH BUT...
 WHAT DO WE DO WITH IT?

taco.cat/oscon12
graphs change constantly
     their edges can be
represented as a time series
taco.cat/oscon12
GRAPH           TIME SERIES

                   +
taco.cat/oscon12
LEMMA 1:
 there exists no possible way for
   applications to communicate
      except via the network
taco.cat/oscon12
LEMMA 2:
  applications are unable to fulfill
 their purpose without communic-
ating and participating in a cluster
taco.cat/oscon12
LEMMA 3:
 the network can be represented
   as a time series and a graph

taco.cat/oscon12
LEMMA 4:
   nearly all modes of failure in
    distributed systems can be
identified and predicated this way
taco.cat/oscon12
WHAT CAN ONE OBSERVE?
                     poor load balancing
network partitions
                     bad deploys
      GC pauses
      good deploys  impaired nodes
  variance       security breaches
taco.cat/oscon12
taco.cat/oscon12
taco.cat/oscon12
taco.cat/oscon12
taco.cat/oscon12
taco.cat/oscon12
TOOLS
    – NProbe / NTop                 – R / RStudio
    – CFlowd / flow-tools           – Esper
    – TCPDump / TCPReplay           – Dynamic Time Warping     (algo)



    – CollectD                      – Python / NumPy / SciPy

taco.cat/oscon12
FURTHER READING
    – Network Flow Analysis
                                                                      – Gigascope
                                                  (No-Starch Press)
                                                                                      (AT&T Research)


    – Eamonn Keogh
                                                                      – Dynamic Time Warping
                                   (“Atomic Wedgie”)
                                                                                                        (algo)


    – K-Snap
                                                                      – Studying Complex
                    (“Efficient Aggr. for Graph Summ.”)



    – “Medians and Beyond”                         (Shrivastava)          Adaptive Systems (Holland)

    – Exponential Smoothing:
      The State Space Approach (Hyndman)
                                                                      –   HyperLogLog / Count-Min Sketch



taco.cat/oscon12
BONUS!
                              a spec for thai chili salsa and reference implementation

                                                                     –    Half a thing of cilantro
      –   28oz peeled tomatoes
                                                                     –    6 cloves of garlic
      –   Half a bag of hot thai chilis
                                                                     –    2 tablespoons of salt
      –   Half a cucumber
                                                                     –    2 tablespoons of white vinegar
      –   Handful of radishes
                                                                     –    Juice from half a lime
      –   One green bell pepper
                                                                     –    Bit of parsley
      –   A small red onion
                                                                     –    Some lemongrass




taco.cat/oscon12
BONUS!
                                                                                U P
                              a spec for thai chili salsa and reference implementation




                                                              L
                                                                     –

                                                            L
                                                                          Half a thing of cilantro
      –   28oz peeled tomatoes




                                                          A
                                                                     –    6 cloves of garlic
      –   Half a bag of hot thai chilis
                                                                     –

                                               T
                                                                          2 tablespoons of salt




                                             I
      –   Half a cucumber
                                                                     –    2 tablespoons of white vinegar
      –

                                 X
          Handful of radishes




                               I
                                                                     –    Juice from half a lime
      –   One green bell pepper
                                                                     –

                    M
                                                                          Bit of parsley
      –   A small red onion
                                                                     –    Some lemongrass




taco.cat/oscon12
A Look at the Network
 Searching for Truth in Distributed Applications
 oscon 2012 - portland oregon




taco.cat/oscon12

More Related Content

More from OSCON Byrum

Open Source Automotive Development
Open Source Automotive DevelopmentOpen Source Automotive Development
Open Source Automotive DevelopmentOSCON Byrum
 
How we built our community using Github - Uri Cohen
How we built our community using Github - Uri CohenHow we built our community using Github - Uri Cohen
How we built our community using Github - Uri CohenOSCON Byrum
 
The Vanishing Pattern: from iterators to generators in Python
The Vanishing Pattern: from iterators to generators in PythonThe Vanishing Pattern: from iterators to generators in Python
The Vanishing Pattern: from iterators to generators in PythonOSCON Byrum
 
Distributed Coordination with Python
Distributed Coordination with PythonDistributed Coordination with Python
Distributed Coordination with PythonOSCON Byrum
 
An overview of open source in East Asia (China, Japan, Korea)
An overview of open source in East Asia (China, Japan, Korea)An overview of open source in East Asia (China, Japan, Korea)
An overview of open source in East Asia (China, Japan, Korea)OSCON Byrum
 
Oscon 2013 Jesse Anderson
Oscon 2013 Jesse AndersonOscon 2013 Jesse Anderson
Oscon 2013 Jesse AndersonOSCON Byrum
 
US Patriot Act OSCON2012 David Mertz
US Patriot Act OSCON2012 David MertzUS Patriot Act OSCON2012 David Mertz
US Patriot Act OSCON2012 David MertzOSCON Byrum
 
OSCON 2012 US Patriot Act Implications for Cloud Computing - Diane Mueller, A...
OSCON 2012 US Patriot Act Implications for Cloud Computing - Diane Mueller, A...OSCON 2012 US Patriot Act Implications for Cloud Computing - Diane Mueller, A...
OSCON 2012 US Patriot Act Implications for Cloud Computing - Diane Mueller, A...OSCON Byrum
 
Big Data for each one of us
Big Data for each one of usBig Data for each one of us
Big Data for each one of usOSCON Byrum
 
BodyTrack: Open Source Tools for Health Empowerment through Self-Tracking
BodyTrack: Open Source Tools for Health Empowerment through Self-Tracking BodyTrack: Open Source Tools for Health Empowerment through Self-Tracking
BodyTrack: Open Source Tools for Health Empowerment through Self-Tracking OSCON Byrum
 
Declarative web data visualization using ClojureScript
Declarative web data visualization using ClojureScriptDeclarative web data visualization using ClojureScript
Declarative web data visualization using ClojureScriptOSCON Byrum
 
Using and Building Open Source in Google Corporate Engineering - Justin McWil...
Using and Building Open Source in Google Corporate Engineering - Justin McWil...Using and Building Open Source in Google Corporate Engineering - Justin McWil...
Using and Building Open Source in Google Corporate Engineering - Justin McWil...OSCON Byrum
 
Life After Sharding: Monitoring and Management of a Complex Data Cloud
Life After Sharding: Monitoring and Management of a Complex Data CloudLife After Sharding: Monitoring and Management of a Complex Data Cloud
Life After Sharding: Monitoring and Management of a Complex Data CloudOSCON Byrum
 
Faster! Faster! Accelerate your business with blazing prototypes
Faster! Faster! Accelerate your business with blazing prototypesFaster! Faster! Accelerate your business with blazing prototypes
Faster! Faster! Accelerate your business with blazing prototypesOSCON Byrum
 
Comparing open source private cloud platforms
Comparing open source private cloud platformsComparing open source private cloud platforms
Comparing open source private cloud platformsOSCON Byrum
 
State of the Art Web Mapping with Open Source
State of the Art Web Mapping with Open SourceState of the Art Web Mapping with Open Source
State of the Art Web Mapping with Open SourceOSCON Byrum
 
Building an Ecosystem of FLOSS to Educate Students with Disabilities
Building an Ecosystem of FLOSS to Educate Students with DisabilitiesBuilding an Ecosystem of FLOSS to Educate Students with Disabilities
Building an Ecosystem of FLOSS to Educate Students with DisabilitiesOSCON Byrum
 
Android Security Essentials
Android Security EssentialsAndroid Security Essentials
Android Security EssentialsOSCON Byrum
 
How to Design for the Future - Cross Channel Experience Design
How to Design for the Future - Cross Channel Experience DesignHow to Design for the Future - Cross Channel Experience Design
How to Design for the Future - Cross Channel Experience DesignOSCON Byrum
 
Harnessing the good intentions of others for your oss project
Harnessing the good intentions of others for your oss projectHarnessing the good intentions of others for your oss project
Harnessing the good intentions of others for your oss projectOSCON Byrum
 

More from OSCON Byrum (20)

Open Source Automotive Development
Open Source Automotive DevelopmentOpen Source Automotive Development
Open Source Automotive Development
 
How we built our community using Github - Uri Cohen
How we built our community using Github - Uri CohenHow we built our community using Github - Uri Cohen
How we built our community using Github - Uri Cohen
 
The Vanishing Pattern: from iterators to generators in Python
The Vanishing Pattern: from iterators to generators in PythonThe Vanishing Pattern: from iterators to generators in Python
The Vanishing Pattern: from iterators to generators in Python
 
Distributed Coordination with Python
Distributed Coordination with PythonDistributed Coordination with Python
Distributed Coordination with Python
 
An overview of open source in East Asia (China, Japan, Korea)
An overview of open source in East Asia (China, Japan, Korea)An overview of open source in East Asia (China, Japan, Korea)
An overview of open source in East Asia (China, Japan, Korea)
 
Oscon 2013 Jesse Anderson
Oscon 2013 Jesse AndersonOscon 2013 Jesse Anderson
Oscon 2013 Jesse Anderson
 
US Patriot Act OSCON2012 David Mertz
US Patriot Act OSCON2012 David MertzUS Patriot Act OSCON2012 David Mertz
US Patriot Act OSCON2012 David Mertz
 
OSCON 2012 US Patriot Act Implications for Cloud Computing - Diane Mueller, A...
OSCON 2012 US Patriot Act Implications for Cloud Computing - Diane Mueller, A...OSCON 2012 US Patriot Act Implications for Cloud Computing - Diane Mueller, A...
OSCON 2012 US Patriot Act Implications for Cloud Computing - Diane Mueller, A...
 
Big Data for each one of us
Big Data for each one of usBig Data for each one of us
Big Data for each one of us
 
BodyTrack: Open Source Tools for Health Empowerment through Self-Tracking
BodyTrack: Open Source Tools for Health Empowerment through Self-Tracking BodyTrack: Open Source Tools for Health Empowerment through Self-Tracking
BodyTrack: Open Source Tools for Health Empowerment through Self-Tracking
 
Declarative web data visualization using ClojureScript
Declarative web data visualization using ClojureScriptDeclarative web data visualization using ClojureScript
Declarative web data visualization using ClojureScript
 
Using and Building Open Source in Google Corporate Engineering - Justin McWil...
Using and Building Open Source in Google Corporate Engineering - Justin McWil...Using and Building Open Source in Google Corporate Engineering - Justin McWil...
Using and Building Open Source in Google Corporate Engineering - Justin McWil...
 
Life After Sharding: Monitoring and Management of a Complex Data Cloud
Life After Sharding: Monitoring and Management of a Complex Data CloudLife After Sharding: Monitoring and Management of a Complex Data Cloud
Life After Sharding: Monitoring and Management of a Complex Data Cloud
 
Faster! Faster! Accelerate your business with blazing prototypes
Faster! Faster! Accelerate your business with blazing prototypesFaster! Faster! Accelerate your business with blazing prototypes
Faster! Faster! Accelerate your business with blazing prototypes
 
Comparing open source private cloud platforms
Comparing open source private cloud platformsComparing open source private cloud platforms
Comparing open source private cloud platforms
 
State of the Art Web Mapping with Open Source
State of the Art Web Mapping with Open SourceState of the Art Web Mapping with Open Source
State of the Art Web Mapping with Open Source
 
Building an Ecosystem of FLOSS to Educate Students with Disabilities
Building an Ecosystem of FLOSS to Educate Students with DisabilitiesBuilding an Ecosystem of FLOSS to Educate Students with Disabilities
Building an Ecosystem of FLOSS to Educate Students with Disabilities
 
Android Security Essentials
Android Security EssentialsAndroid Security Essentials
Android Security Essentials
 
How to Design for the Future - Cross Channel Experience Design
How to Design for the Future - Cross Channel Experience DesignHow to Design for the Future - Cross Channel Experience Design
How to Design for the Future - Cross Channel Experience Design
 
Harnessing the good intentions of others for your oss project
Harnessing the good intentions of others for your oss projectHarnessing the good intentions of others for your oss project
Harnessing the good intentions of others for your oss project
 

A Look at the Network: Searching for Truth in Distributed Applications

  • 1. A Look at the Network Searching for Truth in Distributed Applications c. scott andreas (cscotta) oscon 2012 - portland oregon taco.cat/oscon12
  • 5. THE NETWORK IS RELIABLE taco.cat/oscon12
  • 6. THE NETWORK IS SECURE THERE IS ONE ADMINISTRATOR taco.cat/oscon12
  • 7. LATENCY IS ZERO BANDWIDTH IS INFINITE taco.cat/oscon12
  • 8. THE NETWORK IS HOMOGENOUS TOPOLOGY DOESN’T CHANGE taco.cat/oscon12
  • 9. TRANSPORT COST IS ZERO taco.cat/oscon12
  • 10. where can i buy that? taco.cat/oscon12
  • 11. [ another approach ] taco.cat/oscon12
  • 16. NETWORK + YOUR APPS ARE A GRAPH taco.cat/oscon12
  • 18. YEAH BUT... WHAT DO WE DO WITH IT? taco.cat/oscon12
  • 19. graphs change constantly their edges can be represented as a time series taco.cat/oscon12
  • 20. GRAPH TIME SERIES + taco.cat/oscon12
  • 21. LEMMA 1: there exists no possible way for applications to communicate except via the network taco.cat/oscon12
  • 22. LEMMA 2: applications are unable to fulfill their purpose without communic- ating and participating in a cluster taco.cat/oscon12
  • 23. LEMMA 3: the network can be represented as a time series and a graph taco.cat/oscon12
  • 24. LEMMA 4: nearly all modes of failure in distributed systems can be identified and predicated this way taco.cat/oscon12
  • 25. WHAT CAN ONE OBSERVE? poor load balancing network partitions bad deploys GC pauses good deploys impaired nodes variance security breaches taco.cat/oscon12
  • 31. TOOLS – NProbe / NTop – R / RStudio – CFlowd / flow-tools – Esper – TCPDump / TCPReplay – Dynamic Time Warping (algo) – CollectD – Python / NumPy / SciPy taco.cat/oscon12
  • 32. FURTHER READING – Network Flow Analysis – Gigascope (No-Starch Press) (AT&T Research) – Eamonn Keogh – Dynamic Time Warping (“Atomic Wedgie”) (algo) – K-Snap – Studying Complex (“Efficient Aggr. for Graph Summ.”) – “Medians and Beyond” (Shrivastava) Adaptive Systems (Holland) – Exponential Smoothing: The State Space Approach (Hyndman) – HyperLogLog / Count-Min Sketch taco.cat/oscon12
  • 33. BONUS! a spec for thai chili salsa and reference implementation – Half a thing of cilantro – 28oz peeled tomatoes – 6 cloves of garlic – Half a bag of hot thai chilis – 2 tablespoons of salt – Half a cucumber – 2 tablespoons of white vinegar – Handful of radishes – Juice from half a lime – One green bell pepper – Bit of parsley – A small red onion – Some lemongrass taco.cat/oscon12
  • 34. BONUS! U P a spec for thai chili salsa and reference implementation L – L Half a thing of cilantro – 28oz peeled tomatoes A – 6 cloves of garlic – Half a bag of hot thai chilis – T 2 tablespoons of salt I – Half a cucumber – 2 tablespoons of white vinegar – X Handful of radishes I – Juice from half a lime – One green bell pepper – M Bit of parsley – A small red onion – Some lemongrass taco.cat/oscon12
  • 35. A Look at the Network Searching for Truth in Distributed Applications oscon 2012 - portland oregon taco.cat/oscon12