SlideShare a Scribd company logo

Design Driven Network Assurance

Speaker: Jeremy Schulman, Major League Baseball Abstract: In this talk Jeremy will present MLB's approach to network automation and Infrastructure as Code. This system is used to design, deploy, and validate complex multi-vendor networks, in the presence of on-going design changes. The "prime directive" focuses on validating the expected operational state. Jeremy will discuss the architectural elements and the benefits of this methodology. He will also offer a comparative analysis of traditional configuration-management IaC approaches.

1 of 42
Download to read offline
Copyright © 2023 - Jeremy Schulman
Design Driven
Network Assurance
Jeremy Schulman
Senior Director, Major League Baseball
Copyright © 2023 - Jeremy Schulman
Agenda
● Motivation
● Demos from Deployments
● Some Theory
● Practitioners Details
● Q & A
2
My hope for your takeaway:
Consider different approach
towards network automation
and Infrastructure as Code
Spark ideas how you
approach your next project
For even more ….
Copyright © 2023 - Jeremy Schulman
Background
and
Motivation
● Multi-site enterprise network
● Multiple network vendors
● Multiple networking domains
● Complex network edge
requirements
● Quickly adapt to "in field"
project changes
● Challenging timelines due to
external factors
- Any network design
- Any vendors
- Greenfield projects
- Brownfield projects
- "Snowflakes"
- Agile
3
Copyright © 2023 - Jeremy Schulman
Network Quality Assurance
Ensure the network is operating as expected and
report any anomalies with as much context as
possible maximizing situational awareness.
For any given network we define a design from
which we automatically derive checks. We use
these design checks to validate the current state
of the network.
4
Design
Design
Checks
Validate
Network
Network
change
The checks are automatically recomputed when
we make changes to the design!
Copyright © 2023 - Jeremy Schulman
Design "Compiler"
● Builds the design and
identifies design errors
● Generates the checks for
each device, executed later
by a validation engine
● Generates design reports
● Optionally generates device
configurations
5
Design
Design
Compiler
Checks
Configs
Design
Errors
Reports
netcad
Copyright © 2023 - Jeremy Schulman
Network Validation
Quick Demo
6
Executing the design checks against the live
network and reporting network assurance
results
netcam
Ad

Recommended

Mastering IoT Design: Sense, Process, Connect: Processing: Turning IoT Data i...
Mastering IoT Design: Sense, Process, Connect: Processing: Turning IoT Data i...Mastering IoT Design: Sense, Process, Connect: Processing: Turning IoT Data i...
Mastering IoT Design: Sense, Process, Connect: Processing: Turning IoT Data i...Deepak Shankar
 
"How overlay networks can make public clouds your global WAN" by Ryan Koop o...
 "How overlay networks can make public clouds your global WAN" by Ryan Koop o... "How overlay networks can make public clouds your global WAN" by Ryan Koop o...
"How overlay networks can make public clouds your global WAN" by Ryan Koop o...Cohesive Networks
 
M1-C17-Armando una red.pptx
M1-C17-Armando una red.pptxM1-C17-Armando una red.pptx
M1-C17-Armando una red.pptxAngel Garcia
 
17 - Building small network.pdf
17 - Building small network.pdf17 - Building small network.pdf
17 - Building small network.pdfPhiliphaHaldline
 
Software-Defined WAN: A Real World Success Story
Software-Defined WAN: A Real World Success StorySoftware-Defined WAN: A Real World Success Story
Software-Defined WAN: A Real World Success StoryCisco Enterprise Networks
 
2596 - Integrating PureApplication System Into Your Network
2596 - Integrating PureApplication System Into Your Network2596 - Integrating PureApplication System Into Your Network
2596 - Integrating PureApplication System Into Your NetworkHendrik van Run
 
181472561 presentation on computer networks
181472561 presentation on computer networks181472561 presentation on computer networks
181472561 presentation on computer networksMd Selim Hossain
 

More Related Content

Similar to Design Driven Network Assurance

Discover the Power of ThousandEyes on Your Meraki MX
Discover the Power of ThousandEyes on Your Meraki MXDiscover the Power of ThousandEyes on Your Meraki MX
Discover the Power of ThousandEyes on Your Meraki MXThousandEyes
 
Device Programmability with Cisco Plug-n-Play Solution
Device Programmability with Cisco Plug-n-Play SolutionDevice Programmability with Cisco Plug-n-Play Solution
Device Programmability with Cisco Plug-n-Play SolutionCisco DevNet
 
BRKSEC-3771 - WSA with wccp.pdf
BRKSEC-3771 - WSA with wccp.pdfBRKSEC-3771 - WSA with wccp.pdf
BRKSEC-3771 - WSA with wccp.pdfMenakaDevi14
 
Automating "Network Ready for Use" with pytest
Automating "Network Ready for Use" with pytestAutomating "Network Ready for Use" with pytest
Automating "Network Ready for Use" with pytestJeremy Schulman
 
Assessing Network Readiness
Assessing Network ReadinessAssessing Network Readiness
Assessing Network ReadinessrAVe [PUBS]
 
Ports-and-Adapters Architecture for Embedded HMI
Ports-and-Adapters Architecture for Embedded HMIPorts-and-Adapters Architecture for Embedded HMI
Ports-and-Adapters Architecture for Embedded HMIBurkhard Stubert
 
Bluemix Local – Relay Options and Challenges
Bluemix Local – Relay Options and Challenges Bluemix Local – Relay Options and Challenges
Bluemix Local – Relay Options and Challenges Eduardo Patrocinio
 
“Parallelizing Machine Learning Applications in the Cloud with Kubernetes: A ...
“Parallelizing Machine Learning Applications in the Cloud with Kubernetes: A ...“Parallelizing Machine Learning Applications in the Cloud with Kubernetes: A ...
“Parallelizing Machine Learning Applications in the Cloud with Kubernetes: A ...Edge AI and Vision Alliance
 
Protecting data with CSI Volume Snapshots on Kubernetes
Protecting data with CSI Volume Snapshots on KubernetesProtecting data with CSI Volume Snapshots on Kubernetes
Protecting data with CSI Volume Snapshots on KubernetesDoKC
 
6th SDN Interest Group Seminar - Session6 (131210)
6th SDN Interest Group Seminar - Session6 (131210)6th SDN Interest Group Seminar - Session6 (131210)
6th SDN Interest Group Seminar - Session6 (131210)NAIM Networks, Inc.
 
Getting Started with ThousandEyes Proof of Concepts
Getting Started with ThousandEyes Proof of ConceptsGetting Started with ThousandEyes Proof of Concepts
Getting Started with ThousandEyes Proof of ConceptsThousandEyes
 
Powersoft19 Overview - 2013
Powersoft19 Overview - 2013Powersoft19 Overview - 2013
Powersoft19 Overview - 2013Huzaifa Saadat
 
idsecconf2023 - Neil Armstrong - Leveraging IaC for Stealthy Infrastructure A...
idsecconf2023 - Neil Armstrong - Leveraging IaC for Stealthy Infrastructure A...idsecconf2023 - Neil Armstrong - Leveraging IaC for Stealthy Infrastructure A...
idsecconf2023 - Neil Armstrong - Leveraging IaC for Stealthy Infrastructure A...idsecconf
 
DevOpsDays Taipei 2017 從打鐵到雲端
DevOpsDays Taipei 2017 從打鐵到雲端DevOpsDays Taipei 2017 從打鐵到雲端
DevOpsDays Taipei 2017 從打鐵到雲端Hung-Yen Chen
 
It nv51 instructor_ppt_ch11
It nv51 instructor_ppt_ch11It nv51 instructor_ppt_ch11
It nv51 instructor_ppt_ch11newbie2019
 
NetCom learning webinar start your network foundations with ccna(handouts)
NetCom learning webinar start your network foundations with ccna(handouts)NetCom learning webinar start your network foundations with ccna(handouts)
NetCom learning webinar start your network foundations with ccna(handouts)Tuan Yang
 
ITN_Module_17.pptx
ITN_Module_17.pptxITN_Module_17.pptx
ITN_Module_17.pptxssuserf7cd2b
 
Mris network architecture proposal r1
Mris network architecture proposal r1Mris network architecture proposal r1
Mris network architecture proposal r1Craig Burma
 

Similar to Design Driven Network Assurance (20)

Discover the Power of ThousandEyes on Your Meraki MX
Discover the Power of ThousandEyes on Your Meraki MXDiscover the Power of ThousandEyes on Your Meraki MX
Discover the Power of ThousandEyes on Your Meraki MX
 
Device Programmability with Cisco Plug-n-Play Solution
Device Programmability with Cisco Plug-n-Play SolutionDevice Programmability with Cisco Plug-n-Play Solution
Device Programmability with Cisco Plug-n-Play Solution
 
BRKSEC-3771 - WSA with wccp.pdf
BRKSEC-3771 - WSA with wccp.pdfBRKSEC-3771 - WSA with wccp.pdf
BRKSEC-3771 - WSA with wccp.pdf
 
Automating "Network Ready for Use" with pytest
Automating "Network Ready for Use" with pytestAutomating "Network Ready for Use" with pytest
Automating "Network Ready for Use" with pytest
 
Assessing Network Readiness
Assessing Network ReadinessAssessing Network Readiness
Assessing Network Readiness
 
Project
ProjectProject
Project
 
Ports-and-Adapters Architecture for Embedded HMI
Ports-and-Adapters Architecture for Embedded HMIPorts-and-Adapters Architecture for Embedded HMI
Ports-and-Adapters Architecture for Embedded HMI
 
Bluemix Local – Relay Options and Challenges
Bluemix Local – Relay Options and Challenges Bluemix Local – Relay Options and Challenges
Bluemix Local – Relay Options and Challenges
 
“Parallelizing Machine Learning Applications in the Cloud with Kubernetes: A ...
“Parallelizing Machine Learning Applications in the Cloud with Kubernetes: A ...“Parallelizing Machine Learning Applications in the Cloud with Kubernetes: A ...
“Parallelizing Machine Learning Applications in the Cloud with Kubernetes: A ...
 
Protecting data with CSI Volume Snapshots on Kubernetes
Protecting data with CSI Volume Snapshots on KubernetesProtecting data with CSI Volume Snapshots on Kubernetes
Protecting data with CSI Volume Snapshots on Kubernetes
 
6th SDN Interest Group Seminar - Session6 (131210)
6th SDN Interest Group Seminar - Session6 (131210)6th SDN Interest Group Seminar - Session6 (131210)
6th SDN Interest Group Seminar - Session6 (131210)
 
Getting Started with ThousandEyes Proof of Concepts
Getting Started with ThousandEyes Proof of ConceptsGetting Started with ThousandEyes Proof of Concepts
Getting Started with ThousandEyes Proof of Concepts
 
Powersoft19 Overview - 2013
Powersoft19 Overview - 2013Powersoft19 Overview - 2013
Powersoft19 Overview - 2013
 
idsecconf2023 - Neil Armstrong - Leveraging IaC for Stealthy Infrastructure A...
idsecconf2023 - Neil Armstrong - Leveraging IaC for Stealthy Infrastructure A...idsecconf2023 - Neil Armstrong - Leveraging IaC for Stealthy Infrastructure A...
idsecconf2023 - Neil Armstrong - Leveraging IaC for Stealthy Infrastructure A...
 
DevOpsDays Taipei 2017 從打鐵到雲端
DevOpsDays Taipei 2017 從打鐵到雲端DevOpsDays Taipei 2017 從打鐵到雲端
DevOpsDays Taipei 2017 從打鐵到雲端
 
It nv51 instructor_ppt_ch11
It nv51 instructor_ppt_ch11It nv51 instructor_ppt_ch11
It nv51 instructor_ppt_ch11
 
NetCom learning webinar start your network foundations with ccna(handouts)
NetCom learning webinar start your network foundations with ccna(handouts)NetCom learning webinar start your network foundations with ccna(handouts)
NetCom learning webinar start your network foundations with ccna(handouts)
 
ITN_Module_17.pptx
ITN_Module_17.pptxITN_Module_17.pptx
ITN_Module_17.pptx
 
Network design assignment
Network design assignmentNetwork design assignment
Network design assignment
 
Mris network architecture proposal r1
Mris network architecture proposal r1Mris network architecture proposal r1
Mris network architecture proposal r1
 

More from Network Automation Forum

Automating a World-Class Technology Conference; Behind the Scenes of CiscoLive
Automating a World-Class Technology Conference; Behind the Scenes of CiscoLiveAutomating a World-Class Technology Conference; Behind the Scenes of CiscoLive
Automating a World-Class Technology Conference; Behind the Scenes of CiscoLiveNetwork Automation Forum
 
Network Source of Truth and Infrastructure as Code revisited
Network Source of Truth and Infrastructure as Code revisitedNetwork Source of Truth and Infrastructure as Code revisited
Network Source of Truth and Infrastructure as Code revisitedNetwork Automation Forum
 
Mini-Track: AI and ML in Network Operations Applications
Mini-Track: AI and ML in Network Operations ApplicationsMini-Track: AI and ML in Network Operations Applications
Mini-Track: AI and ML in Network Operations ApplicationsNetwork Automation Forum
 
AutoCon 0 Day Two Keynote: Kireeti Kompella
AutoCon 0 Day Two Keynote: Kireeti KompellaAutoCon 0 Day Two Keynote: Kireeti Kompella
AutoCon 0 Day Two Keynote: Kireeti KompellaNetwork Automation Forum
 
Simplified Troubleshooting through API Scripting
Simplified Troubleshooting through API Scripting Simplified Troubleshooting through API Scripting
Simplified Troubleshooting through API Scripting Network Automation Forum
 
Applying Platform Engineering Principles to On-Premises Network Infrastructure
Applying Platform Engineering Principles to On-Premises Network InfrastructureApplying Platform Engineering Principles to On-Premises Network Infrastructure
Applying Platform Engineering Principles to On-Premises Network InfrastructureNetwork Automation Forum
 
Evolving the Network Automation Journey from Python to Platforms
Evolving the Network Automation Journey from Python to PlatformsEvolving the Network Automation Journey from Python to Platforms
Evolving the Network Automation Journey from Python to PlatformsNetwork Automation Forum
 
Mini-Track: The State of Network Automation
Mini-Track: The State of Network Automation Mini-Track: The State of Network Automation
Mini-Track: The State of Network Automation Network Automation Forum
 
Mini-Track: Challenges to Network Automation Adoption
Mini-Track: Challenges to Network Automation AdoptionMini-Track: Challenges to Network Automation Adoption
Mini-Track: Challenges to Network Automation AdoptionNetwork Automation Forum
 

More from Network Automation Forum (13)

Automating a World-Class Technology Conference; Behind the Scenes of CiscoLive
Automating a World-Class Technology Conference; Behind the Scenes of CiscoLiveAutomating a World-Class Technology Conference; Behind the Scenes of CiscoLive
Automating a World-Class Technology Conference; Behind the Scenes of CiscoLive
 
Mini-Track: Observability
Mini-Track: ObservabilityMini-Track: Observability
Mini-Track: Observability
 
Network Source of Truth and Infrastructure as Code revisited
Network Source of Truth and Infrastructure as Code revisitedNetwork Source of Truth and Infrastructure as Code revisited
Network Source of Truth and Infrastructure as Code revisited
 
Mini-Track: AI and ML in Network Operations Applications
Mini-Track: AI and ML in Network Operations ApplicationsMini-Track: AI and ML in Network Operations Applications
Mini-Track: AI and ML in Network Operations Applications
 
Zero to Automated in Under a Year
Zero to Automated in Under a YearZero to Automated in Under a Year
Zero to Automated in Under a Year
 
Mini-Track: Lessons from Public Cloud
Mini-Track: Lessons from Public CloudMini-Track: Lessons from Public Cloud
Mini-Track: Lessons from Public Cloud
 
AutoCon 0 Day Two Keynote: Kireeti Kompella
AutoCon 0 Day Two Keynote: Kireeti KompellaAutoCon 0 Day Two Keynote: Kireeti Kompella
AutoCon 0 Day Two Keynote: Kireeti Kompella
 
Mini-Track: How Can We Do Better?
Mini-Track: How Can We Do Better?Mini-Track: How Can We Do Better?
Mini-Track: How Can We Do Better?
 
Simplified Troubleshooting through API Scripting
Simplified Troubleshooting through API Scripting Simplified Troubleshooting through API Scripting
Simplified Troubleshooting through API Scripting
 
Applying Platform Engineering Principles to On-Premises Network Infrastructure
Applying Platform Engineering Principles to On-Premises Network InfrastructureApplying Platform Engineering Principles to On-Premises Network Infrastructure
Applying Platform Engineering Principles to On-Premises Network Infrastructure
 
Evolving the Network Automation Journey from Python to Platforms
Evolving the Network Automation Journey from Python to PlatformsEvolving the Network Automation Journey from Python to Platforms
Evolving the Network Automation Journey from Python to Platforms
 
Mini-Track: The State of Network Automation
Mini-Track: The State of Network Automation Mini-Track: The State of Network Automation
Mini-Track: The State of Network Automation
 
Mini-Track: Challenges to Network Automation Adoption
Mini-Track: Challenges to Network Automation AdoptionMini-Track: Challenges to Network Automation Adoption
Mini-Track: Challenges to Network Automation Adoption
 

Recently uploaded

ASTRAZENECA. Knowledge Graphs Powering a Fast-moving Global Life Sciences Org...
ASTRAZENECA. Knowledge Graphs Powering a Fast-moving Global Life Sciences Org...ASTRAZENECA. Knowledge Graphs Powering a Fast-moving Global Life Sciences Org...
ASTRAZENECA. Knowledge Graphs Powering a Fast-moving Global Life Sciences Org...Neo4j
 
My Journey towards Artificial Intelligence
My Journey towards Artificial IntelligenceMy Journey towards Artificial Intelligence
My Journey towards Artificial IntelligenceVijayananda Mohire
 
How to write an effective Cyber Incident Response Plan
How to write an effective Cyber Incident Response PlanHow to write an effective Cyber Incident Response Plan
How to write an effective Cyber Incident Response PlanDatabarracks
 
"Platform Engineering with Development Containers", Igor Fesenko
"Platform Engineering with Development Containers", Igor Fesenko"Platform Engineering with Development Containers", Igor Fesenko
"Platform Engineering with Development Containers", Igor FesenkoFwdays
 
Act Like an Owner, Challenge Like a VC by former CPO, Tripadvisor
Act Like an Owner,  Challenge Like a VC by former CPO, TripadvisorAct Like an Owner,  Challenge Like a VC by former CPO, Tripadvisor
Act Like an Owner, Challenge Like a VC by former CPO, TripadvisorProduct School
 
Confoo 2024 Gettings started with OpenAI and data science
Confoo 2024 Gettings started with OpenAI and data scienceConfoo 2024 Gettings started with OpenAI and data science
Confoo 2024 Gettings started with OpenAI and data scienceSusan Ibach
 
My sample product research idea for you!
My sample product research idea for you!My sample product research idea for you!
My sample product research idea for you!KivenRaySarsaba
 
Automation Ops Series: Session 1 - Introduction and setup DevOps for UiPath p...
Automation Ops Series: Session 1 - Introduction and setup DevOps for UiPath p...Automation Ops Series: Session 1 - Introduction and setup DevOps for UiPath p...
Automation Ops Series: Session 1 - Introduction and setup DevOps for UiPath p...DianaGray10
 
Apex Replay Debugger and Salesforce Platform Events.pptx
Apex Replay Debugger and Salesforce Platform Events.pptxApex Replay Debugger and Salesforce Platform Events.pptx
Apex Replay Debugger and Salesforce Platform Events.pptxmohayyudin7826
 
21ST CENTURY LITERACY FROM TRADITIONAL TO MODERN
21ST CENTURY LITERACY FROM TRADITIONAL TO MODERN21ST CENTURY LITERACY FROM TRADITIONAL TO MODERN
21ST CENTURY LITERACY FROM TRADITIONAL TO MODERNRonnelBaroc
 
IT Nation Evolve event 2024 - Quarter 1
IT Nation Evolve event 2024  - Quarter 1IT Nation Evolve event 2024  - Quarter 1
IT Nation Evolve event 2024 - Quarter 1Inbay UK
 
Progress Report: Ministry of IT under Dr. Umar Saif Aug 23-Feb'24
Progress Report: Ministry of IT under Dr. Umar Saif Aug 23-Feb'24Progress Report: Ministry of IT under Dr. Umar Saif Aug 23-Feb'24
Progress Report: Ministry of IT under Dr. Umar Saif Aug 23-Feb'24Umar Saif
 
Are Human-generated Demonstrations Necessary for In-context Learning?
Are Human-generated Demonstrations Necessary for In-context Learning?Are Human-generated Demonstrations Necessary for In-context Learning?
Are Human-generated Demonstrations Necessary for In-context Learning?MENGSAYLOEM1
 
How AI and ChatGPT are changing cybersecurity forever.pptx
How AI and ChatGPT are changing cybersecurity forever.pptxHow AI and ChatGPT are changing cybersecurity forever.pptx
How AI and ChatGPT are changing cybersecurity forever.pptxInfosec
 
Enhancing Productivity and Insight A Tour of JDK Tools Progress Beyond Java 17
Enhancing Productivity and Insight  A Tour of JDK Tools Progress Beyond Java 17Enhancing Productivity and Insight  A Tour of JDK Tools Progress Beyond Java 17
Enhancing Productivity and Insight A Tour of JDK Tools Progress Beyond Java 17Ana-Maria Mihalceanu
 
Campotel: Telecommunications Infra and Network Builder - Company Profile
Campotel: Telecommunications Infra and Network Builder - Company ProfileCampotel: Telecommunications Infra and Network Builder - Company Profile
Campotel: Telecommunications Infra and Network Builder - Company ProfileCampotelPhilippines
 
Introducing the New FME Community Webinar - Feb 21, 2024 (2).pdf
Introducing the New FME Community Webinar - Feb 21, 2024 (2).pdfIntroducing the New FME Community Webinar - Feb 21, 2024 (2).pdf
Introducing the New FME Community Webinar - Feb 21, 2024 (2).pdfSafe Software
 
Leveraging SLF4j for Effective Logging in IBM App Connect Enterprise.docx
Leveraging SLF4j for Effective Logging in IBM App Connect Enterprise.docxLeveraging SLF4j for Effective Logging in IBM App Connect Enterprise.docx
Leveraging SLF4j for Effective Logging in IBM App Connect Enterprise.docxVotarikari Shravan
 
Enterprise Architecture As Strategy - Book Review
Enterprise Architecture As Strategy - Book ReviewEnterprise Architecture As Strategy - Book Review
Enterprise Architecture As Strategy - Book ReviewAshraf Fouad
 

Recently uploaded (20)

In sharing we trust. Taking advantage of a diverse consortium to build a tran...
In sharing we trust. Taking advantage of a diverse consortium to build a tran...In sharing we trust. Taking advantage of a diverse consortium to build a tran...
In sharing we trust. Taking advantage of a diverse consortium to build a tran...
 
ASTRAZENECA. Knowledge Graphs Powering a Fast-moving Global Life Sciences Org...
ASTRAZENECA. Knowledge Graphs Powering a Fast-moving Global Life Sciences Org...ASTRAZENECA. Knowledge Graphs Powering a Fast-moving Global Life Sciences Org...
ASTRAZENECA. Knowledge Graphs Powering a Fast-moving Global Life Sciences Org...
 
My Journey towards Artificial Intelligence
My Journey towards Artificial IntelligenceMy Journey towards Artificial Intelligence
My Journey towards Artificial Intelligence
 
How to write an effective Cyber Incident Response Plan
How to write an effective Cyber Incident Response PlanHow to write an effective Cyber Incident Response Plan
How to write an effective Cyber Incident Response Plan
 
"Platform Engineering with Development Containers", Igor Fesenko
"Platform Engineering with Development Containers", Igor Fesenko"Platform Engineering with Development Containers", Igor Fesenko
"Platform Engineering with Development Containers", Igor Fesenko
 
Act Like an Owner, Challenge Like a VC by former CPO, Tripadvisor
Act Like an Owner,  Challenge Like a VC by former CPO, TripadvisorAct Like an Owner,  Challenge Like a VC by former CPO, Tripadvisor
Act Like an Owner, Challenge Like a VC by former CPO, Tripadvisor
 
Confoo 2024 Gettings started with OpenAI and data science
Confoo 2024 Gettings started with OpenAI and data scienceConfoo 2024 Gettings started with OpenAI and data science
Confoo 2024 Gettings started with OpenAI and data science
 
My sample product research idea for you!
My sample product research idea for you!My sample product research idea for you!
My sample product research idea for you!
 
Automation Ops Series: Session 1 - Introduction and setup DevOps for UiPath p...
Automation Ops Series: Session 1 - Introduction and setup DevOps for UiPath p...Automation Ops Series: Session 1 - Introduction and setup DevOps for UiPath p...
Automation Ops Series: Session 1 - Introduction and setup DevOps for UiPath p...
 
Apex Replay Debugger and Salesforce Platform Events.pptx
Apex Replay Debugger and Salesforce Platform Events.pptxApex Replay Debugger and Salesforce Platform Events.pptx
Apex Replay Debugger and Salesforce Platform Events.pptx
 
21ST CENTURY LITERACY FROM TRADITIONAL TO MODERN
21ST CENTURY LITERACY FROM TRADITIONAL TO MODERN21ST CENTURY LITERACY FROM TRADITIONAL TO MODERN
21ST CENTURY LITERACY FROM TRADITIONAL TO MODERN
 
IT Nation Evolve event 2024 - Quarter 1
IT Nation Evolve event 2024  - Quarter 1IT Nation Evolve event 2024  - Quarter 1
IT Nation Evolve event 2024 - Quarter 1
 
Progress Report: Ministry of IT under Dr. Umar Saif Aug 23-Feb'24
Progress Report: Ministry of IT under Dr. Umar Saif Aug 23-Feb'24Progress Report: Ministry of IT under Dr. Umar Saif Aug 23-Feb'24
Progress Report: Ministry of IT under Dr. Umar Saif Aug 23-Feb'24
 
Are Human-generated Demonstrations Necessary for In-context Learning?
Are Human-generated Demonstrations Necessary for In-context Learning?Are Human-generated Demonstrations Necessary for In-context Learning?
Are Human-generated Demonstrations Necessary for In-context Learning?
 
How AI and ChatGPT are changing cybersecurity forever.pptx
How AI and ChatGPT are changing cybersecurity forever.pptxHow AI and ChatGPT are changing cybersecurity forever.pptx
How AI and ChatGPT are changing cybersecurity forever.pptx
 
Enhancing Productivity and Insight A Tour of JDK Tools Progress Beyond Java 17
Enhancing Productivity and Insight  A Tour of JDK Tools Progress Beyond Java 17Enhancing Productivity and Insight  A Tour of JDK Tools Progress Beyond Java 17
Enhancing Productivity and Insight A Tour of JDK Tools Progress Beyond Java 17
 
Campotel: Telecommunications Infra and Network Builder - Company Profile
Campotel: Telecommunications Infra and Network Builder - Company ProfileCampotel: Telecommunications Infra and Network Builder - Company Profile
Campotel: Telecommunications Infra and Network Builder - Company Profile
 
Introducing the New FME Community Webinar - Feb 21, 2024 (2).pdf
Introducing the New FME Community Webinar - Feb 21, 2024 (2).pdfIntroducing the New FME Community Webinar - Feb 21, 2024 (2).pdf
Introducing the New FME Community Webinar - Feb 21, 2024 (2).pdf
 
Leveraging SLF4j for Effective Logging in IBM App Connect Enterprise.docx
Leveraging SLF4j for Effective Logging in IBM App Connect Enterprise.docxLeveraging SLF4j for Effective Logging in IBM App Connect Enterprise.docx
Leveraging SLF4j for Effective Logging in IBM App Connect Enterprise.docx
 
Enterprise Architecture As Strategy - Book Review
Enterprise Architecture As Strategy - Book ReviewEnterprise Architecture As Strategy - Book Review
Enterprise Architecture As Strategy - Book Review
 

Design Driven Network Assurance

  • 1. Copyright © 2023 - Jeremy Schulman Design Driven Network Assurance Jeremy Schulman Senior Director, Major League Baseball
  • 2. Copyright © 2023 - Jeremy Schulman Agenda ● Motivation ● Demos from Deployments ● Some Theory ● Practitioners Details ● Q & A 2 My hope for your takeaway: Consider different approach towards network automation and Infrastructure as Code Spark ideas how you approach your next project For even more ….
  • 3. Copyright © 2023 - Jeremy Schulman Background and Motivation ● Multi-site enterprise network ● Multiple network vendors ● Multiple networking domains ● Complex network edge requirements ● Quickly adapt to "in field" project changes ● Challenging timelines due to external factors - Any network design - Any vendors - Greenfield projects - Brownfield projects - "Snowflakes" - Agile 3
  • 4. Copyright © 2023 - Jeremy Schulman Network Quality Assurance Ensure the network is operating as expected and report any anomalies with as much context as possible maximizing situational awareness. For any given network we define a design from which we automatically derive checks. We use these design checks to validate the current state of the network. 4 Design Design Checks Validate Network Network change The checks are automatically recomputed when we make changes to the design!
  • 5. Copyright © 2023 - Jeremy Schulman Design "Compiler" ● Builds the design and identifies design errors ● Generates the checks for each device, executed later by a validation engine ● Generates design reports ● Optionally generates device configurations 5 Design Design Compiler Checks Configs Design Errors Reports netcad
  • 6. Copyright © 2023 - Jeremy Schulman Network Validation Quick Demo 6 Executing the design checks against the live network and reporting network assurance results netcam
  • 7. Copyright © 2023 - Jeremy Schulman Four Critical Questions … 7 1. How do we know we are building the right network? 2. How do ensure the network is configured correctly? 3. How do we ensure the network is operationally correct? netcam netcad netcad netcam process netcad
  • 8. Copyright © 2023 - Jeremy Schulman The Fourth Critical Question 4. How do we advance the transformation of culture, process, and automation? leadership resources "care" process products 8
  • 9. Copyright © 2023 - Jeremy Schulman Demo Time!
  • 10. Copyright © 2023 - Jeremy Schulman NetCad + NetBox Integration Use netcad to design a site network Use netcad-netbox plugin to push the site design into NetBox ● Sites ● Devices ● Interfaces ● IP Addresses ● Link-Aggregation Groups ● Cabling 10
  • 11. Copyright © 2023 - Jeremy Schulman
  • 12. Copyright © 2023 - Jeremy Schulman Check Network Pre-Hardware Swap Use netcad to build network checks Use netcam to perform network checks Observe work that needs to be completed ● Swap network hardware ● Transceiver to be swapped ● Interfaces to be cabled 12
  • 13. Copyright © 2023 - Jeremy Schulman
  • 14. Copyright © 2023 - Jeremy Schulman Check Config Deployment Use netcad to build device configurations Use netcam to config-check for differences on the live network device ● See exactly what changes will be made before they are made ● Fully automated with rollback ● Captures diff-files 14
  • 15. Copyright © 2023 - Jeremy Schulman
  • 16. Copyright © 2023 - Jeremy Schulman Check Network Status after Deploy On-site technician has swapped hardware Need to validate operational state Need to identify any anomalies to resolve ● Found missing cabling ● Power systems not online yet 16
  • 17. Copyright © 2023 - Jeremy Schulman
  • 18. Copyright © 2023 - Jeremy Schulman What is Design Driven Network Assurance?
  • 19. Copyright © 2023 - Jeremy Schulman What is a Design? 19 The set of devices networked together The composition of design services that each device uses to validate the state of the network
  • 20. Copyright © 2023 - Jeremy Schulman Network Quality Assurance Matrix 20 Topology VLANs PTP BGP-Peer Multicast dev1 dev2 dev3 dev4 dev5 dev6 dev7
  • 21. Copyright © 2023 - Jeremy Schulman Network Check Results … Pass/Fail 21 Topology VLANs PTP BGP-Peer Multicast dev1 dev2 dev3 dev4 dev5 dev6 dev7
  • 22. Copyright © 2023 - Jeremy Schulman dev3 is Operating as Expected 22 Topology VLANs PTP BGP-Peer Multicast dev1 dev2 dev3 dev4 dev5 dev6 dev7
  • 23. Copyright © 2023 - Jeremy Schulman Multicast is Operating as Expected 23 Topology VLANs PTP BGP-Peer Multicast dev1 dev2 dev3 dev4 dev5 dev6 dev7
  • 24. Copyright © 2023 - Jeremy Schulman The Network is Operating as Expected 24 Topology VLANs PTP BGP-Peer Multicast dev1 dev2 dev3 dev4 dev5 dev6 dev7
  • 25. Copyright © 2023 - Jeremy Schulman Case Study: Precision Time Protocol
  • 26. Copyright © 2023 - Jeremy Schulman Case Study: PTP w/primary+backup GM 26 (G) - Grand Master - Clock origin (M) - Master - transmits clock (S) - Slave - receives clock
  • 27. Copyright © 2023 - Jeremy Schulman PTP - Design Report 27 The design describes the expected PTP state(s) for each device and interface What is the actual state of PTP in this network ? netcad
  • 28. Copyright © 2023 - Jeremy Schulman PTP Network Check Report 28 Site where PTP service is NOT working as expected. Report shows informational and potential corrective actions. netcam
  • 29. Copyright © 2023 - Jeremy Schulman PTP Network Check Report 29 Site where PTP service is working as expected netcam
  • 30. Copyright © 2023 - Jeremy Schulman Design Driven Network Assurance - Python "SDK"
  • 31. Copyright © 2023 - Jeremy Schulman Python First Approach ● Each design consists of Python files that use the netcad-cam SDK toolkit ● Plugins to utilize specific NOS and design-services ● Multiple python packages / repositories ● Approach designed for plugin / extensibility
  • 32. Copyright © 2023 - Jeremy Schulman Benefits of Python Approach ● Leverage Python ecosystem ○ packages, IDEs, debuggers, and best practices ● Async I/O for concurrency and fast execution !!! ● "NoYAML" ● Benefits Junior network automation engineers ○ environment to learn and develop skills ● Flexible - Handle network design business logic / "snowflakes" 32
  • 33. Copyright © 2023 - Jeremy Schulman Software Engineering Best Practices ○ Requirement gathering ○ Focus on documentation ○ Code versioning ○ Peer reviews ○ Learn collaborative development ○ Using a debugger ○ Writing test cases ○ Other systems integration ○ Large project composition ○ Not constrained by DSL 33
  • 34. Copyright © 2023 - Jeremy Schulman Challenges of Python Approach ● Python learning curve ● Software tooling learning curve ● Having dedicated "off project" time to practice a new skill ● Expectation setting with stakeholders ○ developing solutions vs. going Cowboy on the CLI ● Working collaborative vs. Cowboy | Hero ● Focusing on non-coding aspects that take time ○ documentation, testing, and software maintenance 34 Any change is hard Affects people, process, and culture Be patient
  • 35. Copyright © 2023 - Jeremy Schulman Summary ● Design is code - version controlled, reviewed, lifecycle ● Design checks are quality assurance tests that provide operational coverage ● Encourages practice to keep Designs "up to date" by the nature of running the network by Design ● Builds skill sets to manage IaC based systems Design Driven Network Assurance 35
  • 36. Copyright © 2023 - Jeremy Schulman Thank you! Jeremy Schulman Senior Director, Major League Baseball
  • 37. Copyright © 2023 - Jeremy Schulman Q&A Meet Up
  • 38. Copyright © 2023 - Jeremy Schulman Backup Slides
  • 39. Copyright © 2023 - Jeremy Schulman Design Services - Reusable Building Blocks ● Network Vendor/System agnostic ● Defines design validation rules so that we cannot build "invalid" designs ● Provides service specific build automations ● Defines collections of checks that will be generated for each device using the design service ● Can be general purpose such as "topology" and "vlans" ● Can be bespoke to enterprise specific needs 39 Validation rules Build automations Check collections Design-Service XYZ
  • 40. Copyright © 2023 - Jeremy Schulman Design Automation - VLAN Port Assignments 40 Acc Switch 1 Acc Switch 3 Agg Switch Vlans A, B, C Vlans A, D, E, F ALL ALL Acc Switch 2 Vlans A, B, D, E ALL PEER PEER PEER ALL Indicates this port should be configured will all VLANs defined in the design for this device PEER Indicates this port should be configured with the same VLANs used by the connected interface (peer) Router ALL PEER
  • 41. Copyright © 2023 - Jeremy Schulman Design Service Validation Abstraction Example 41 Vlans Design Service Switchports Vlans EOS vlans-ds IOS-XE vlans-ds NX-OS vlans-ds <OS …> vlans-ds Each OS driver will implement the vlans design-service "switchports" and "vlans" checks, specific to their capabilities and access (API vs. SSH, etc)