SlideShare a Scribd company logo
NETWORK DEVICE AUTO CONFIGURATION
& CORRECTION
Sai kumaresh L
17BEC1184
Guided by:
Prem Kumar, L&T
Prof. Sofana Reka, VIT
MOTIVATION
• Eliminate manual tasks
• Reduce errors
• Simplify Network
Management
• Optimize Performance
• Gain network visibility
2
OBJECTIVE
Implementation of
• Zero Touch
Provisioning(ZTP)
• Root Cause Analysis
(RCA)
3
SOFTWARE DETAILS
• Cisco Router Images (csr1000v,
c3725)
• Netmiko
• Python
• GNS3
• Ubuntu Linux
• Graphviz
4
CODES AND
STANDARDS
5
The codes are all written in Python programming language.
These Python scripts are executed with the help of linux
terminal inside the Network Automation appliance of GNS3
The Secure Shell (SSH) Transport Layer Protocal - IETF
Standard (rfc425)
The Dynamic Host Control Protocol (DHCP) - IETF Standard
(rfc2131)
The TFTP Protocol – IETF Standard (rfc1350)
ZERO TOUCH
PROVISIONING
(ZTP)
• ZTP helps in reducing the several
manual steps involved in
provisioning a network element to
two simple steps of Racking and
Stacking and Powering the device
on.
• When it’s powered on, the switch
sends out a request through DHCP
server to get the location of its
centrally stored image and
configuration, which it downloads
and runs.
• ZTP automates steps like updating
operating systems, deploying
patches and bug fixes.
6
METHODOLOGY
• When a device that supports Zero-Touch Provisioning
boots up and does not find the startup configuration
(during initial installation), the device enters the Zero-
Touch Provisioning mode.
• The device searches for a Dynamic Host Control
Protocol (DHCP) server, bootstraps itself with its
interface IP address, gateway, and Domain Name System
(DNS) server IP address, and enables Guest Shell.
• The device then obtains the IP address or URL of an
HTTP/TFTP server and downloads the Python script to
configure the device.
• Guest Shell provides the environment for the Python
script to run. Guest Shell executes the downloaded
Python script and applies an initial configuration to
the device.
7
DHCP SERVER
CONFIGURATION
FOR ZTP
• A DHCP server must be running on the same network as the new device that is being provisioned
• When the new device is switched on, it retrieves the IP address information of the HTTP/TFTP server
where the Python script resides, and the folder path of the Python script from the DHCP server.
• The DHCP server responds to DHCP discovery events with the following options:
• Option 150—(Optional) Contains a list of IP addresses that points to the HTTP/TFTP server on the management
network that hosts the Python scripts to be run.
• Option 67—Contains the Python script file path on the HTTP/TFTP server.
8
ADVANTAGES OF
ZERO TOUCH
PROVISIONING
• Reduce costs and save time for deployments
• More efficient use of staffing resources
• Minimize configuration errors
• Reduce number of tools required
• Eliminate the need for extra equipment
9
NETWORK
TOPOLOGY
• CSR1000V - New device
to be provisioned
• C3725 - DHCP Server
• Network Automation -
TFTP Server containing
the Python script
10
DHCP SERVER
CONFIG
• Network – 192.168.0.0/24
• TFTP Server Address –
192.168.0.2
• File Name – ztp_trial.py
11
TFTP SERVER CONFIGURATION
PYTHON SCRIPT
13
ROOT CAUSE ANALYSIS
(RCA)
• RCA is applied to methodically identify
and correct the root causes of events,
as opposed to simply addressing their
symptomatic result.
• “Root cause” may be described as the
point in a causal chain where applying a
corrective action or intervention would
prevent the problem from occurring.
14
EXAMPLE
1. If the Router03 node goes down, there is no
response from other interfaces and IP
addresses that Router03 has.
2. A large number of failure events occurs.
3. The Monitoring Manager decides that the
lack of responses from IP addresses was
caused by the interface failures, and then
suppresses the corresponding incidents.
4. Based on the fact that communication was
lost at neighboring nodes, the Monitoring
Manager decides the root cause is the
Router03 node going down. The Monitoring
Manager also decides that the interface
failures were caused by the node going down
and associates the interface failures with the
Router03 node going down.
5. The Router03 node going down is reported
as the root-cause incident.
15
FAILURE IN MIDDLE-LEVEL SWITCH
Detailed failure: The middle-level switch C2 went down.
Events that occur:
• Communication with C2 is unavailable.
• Each node interface connecting with C2 went down.
The Monitoring Manage handles this situation as follows:
• Detects the failure of the C2 node.
• Decides that each interface connecting with C2 went down
because of the failure of C2, and then suppresses the
corresponding incidents.
As a result, the Monitoring Manager reports only the failure of C2 as
the root-cause incident.
16
Netmiko is an open-source library designed to simplify SSH
management across a wide range of network devices from various
vendors including Cisco, Arista, and Juniper Networks
17
SSH
OSPF ROUTING
19
ROUTING
TABLE
20
IP INTERFACES
NETWORK
TOPOLOGY
22
23
24
GRAPH
25
CORE ROUTER
26
CORE ROUTER
27
28
LEVEL 2 ROUTER
2 INDIVIDUAL ROUTERS
29
DJANGO
FRAMEWORK
• Django is a free and open-source web application framework used
for web development.
30
WEB PAGE
• Homepage
• Network Topology Mapper
• Root Cause Analyzer
31
TOPOLOGY
USED
32
33
34
35
36
DEMO VIDEO
37
CONSTRAINTS
38
The DHCP Server and the TFTP/HTTP
Server must be in the same network as
the new one that is getting provisioned.
This method cannot be used for old
routers that doesn’t support Zero Touch
Provisioning.
CONCLUSION
39
The process from initial configuration to error detection which were done
manually have been successfully automated with the help of Python.
And the tool is integrated with Django to create a web UI displaying the
information it learned from the network and displaying the Root Cause in case
of a failure in the network.
FUTURE WORK
40
A ZTP Process with more templates could be used to provision a variety
of devices.
The Network Topology Mapper and Root Cause Analyzer get their data from
the routers using netmiko. NETCONG and YANG could be used to get the
needed data to make the process faster.
REFERENCES
[1] Jürgen Schönwälder, Martin Björklund ,Phil Shafer "Network configuration management using
NETCONF and YANG",October 2010, IEEE Communications Magazine 48(9):166 - 173.
[2] Tarik Taleb , Ibrahim Afolabi, et al,"On Multi-Domain Network Slicing Orchestration Architecture
and Federated Resource Control", IEEE Network ( Volume: 33, Issue: 5, Sept.-Oct. 2019 ).
[3] Yuri Demchenko, Sonja Filiposka, Raimundas, et al, "Enabling Automated Network Services
Provisioning for Cloud-Based Applications Using Zero Touch Provisioning", 2015 IEEE/ACM 8th
International Conference on Utility and Cloud Computing (UCC).
[4] Adnan Hamad, DIngli Yu, J B Gomm, Mahavir S Sangha, “Fault Detection and isolation for engine
under closed-loop control”, Sept 2012, IEEE.
41
42
THANK YOU L.SAI KUMARESH
17BEC1184
43

More Related Content

PDF
CCNA 1 Chapter 11 v5.0 2014
PDF
Ccnav5.org ccna 4-v50_practice_final_exam
PDF
CMIT 350 FINAL EXAM CCNA CERTIFICATION PRACTICE EXAM
PPTX
end to end packet flow in an airport network using cisco packet tracer
PDF
Ccnav5.org ccna 1-v50_itn_practice_final_exam_answers
PDF
ccna 1 v5.0 itn practice final exam answers
PDF
CCNA 1 v6.0 Final Exam Answers Option B 2018
PDF
Ccna 4 Final 4 Version 4.0 Answers
CCNA 1 Chapter 11 v5.0 2014
Ccnav5.org ccna 4-v50_practice_final_exam
CMIT 350 FINAL EXAM CCNA CERTIFICATION PRACTICE EXAM
end to end packet flow in an airport network using cisco packet tracer
Ccnav5.org ccna 1-v50_itn_practice_final_exam_answers
ccna 1 v5.0 itn practice final exam answers
CCNA 1 v6.0 Final Exam Answers Option B 2018
Ccna 4 Final 4 Version 4.0 Answers

Similar to Network Auto Configuration and Correction using Python.pptx (20)

PDF
Ccna 2 Final V4 1
PPTX
Implementing IP V4
DOC
Banking and ATM networking reports
PPTX
Final presentation phases1_2_3
PDF
Ccna1 v6.0 pretest exam answers 2018
PPTX
gkkSecurity essentials domain 2
PPTX
gkk_2021123rg5hSecurity essentials domain 2
PPTX
gkk20211e4djwew4dSecurity essentials domain 2
PPTX
cFrame framework slides
PDF
Nachos Theoretical assigment 3
PDF
Modification of l3 learning switch code for firewall functionality in pox con...
PPTX
Basic to advance protocols
DOCX
Project report,nowrin
DOCX
Running head network design 1 netwo
PDF
Www ccnav5 net_ccna_3_v5_0_scaling_networks_final_exam_2013
PDF
MininetasSDNPlatform.pdf
PDF
Linux hpc-cluster-setup-guide
PDF
2.5.1.2 packet tracer configure cisco routers for syslog, ntp, and ssh oper...
DOCX
111
DOCX
111
Ccna 2 Final V4 1
Implementing IP V4
Banking and ATM networking reports
Final presentation phases1_2_3
Ccna1 v6.0 pretest exam answers 2018
gkkSecurity essentials domain 2
gkk_2021123rg5hSecurity essentials domain 2
gkk20211e4djwew4dSecurity essentials domain 2
cFrame framework slides
Nachos Theoretical assigment 3
Modification of l3 learning switch code for firewall functionality in pox con...
Basic to advance protocols
Project report,nowrin
Running head network design 1 netwo
Www ccnav5 net_ccna_3_v5_0_scaling_networks_final_exam_2013
MininetasSDNPlatform.pdf
Linux hpc-cluster-setup-guide
2.5.1.2 packet tracer configure cisco routers for syslog, ntp, and ssh oper...
111
111
Ad

Recently uploaded (20)

PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PDF
Encapsulation theory and applications.pdf
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PDF
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PDF
Encapsulation_ Review paper, used for researhc scholars
PDF
Unlocking AI with Model Context Protocol (MCP)
PDF
Machine learning based COVID-19 study performance prediction
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
DOCX
The AUB Centre for AI in Media Proposal.docx
PPT
Teaching material agriculture food technology
PDF
MIND Revenue Release Quarter 2 2025 Press Release
PDF
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PDF
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
PDF
Network Security Unit 5.pdf for BCA BBA.
PPTX
Programs and apps: productivity, graphics, security and other tools
PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
Reach Out and Touch Someone: Haptics and Empathic Computing
The Rise and Fall of 3GPP – Time for a Sabbatical?
Encapsulation theory and applications.pdf
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
Building Integrated photovoltaic BIPV_UPV.pdf
Encapsulation_ Review paper, used for researhc scholars
Unlocking AI with Model Context Protocol (MCP)
Machine learning based COVID-19 study performance prediction
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
The AUB Centre for AI in Media Proposal.docx
Teaching material agriculture food technology
MIND Revenue Release Quarter 2 2025 Press Release
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
“AI and Expert System Decision Support & Business Intelligence Systems”
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
Network Security Unit 5.pdf for BCA BBA.
Programs and apps: productivity, graphics, security and other tools
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
Ad

Network Auto Configuration and Correction using Python.pptx

  • 1. NETWORK DEVICE AUTO CONFIGURATION & CORRECTION Sai kumaresh L 17BEC1184 Guided by: Prem Kumar, L&T Prof. Sofana Reka, VIT
  • 2. MOTIVATION • Eliminate manual tasks • Reduce errors • Simplify Network Management • Optimize Performance • Gain network visibility 2
  • 3. OBJECTIVE Implementation of • Zero Touch Provisioning(ZTP) • Root Cause Analysis (RCA) 3
  • 4. SOFTWARE DETAILS • Cisco Router Images (csr1000v, c3725) • Netmiko • Python • GNS3 • Ubuntu Linux • Graphviz 4
  • 5. CODES AND STANDARDS 5 The codes are all written in Python programming language. These Python scripts are executed with the help of linux terminal inside the Network Automation appliance of GNS3 The Secure Shell (SSH) Transport Layer Protocal - IETF Standard (rfc425) The Dynamic Host Control Protocol (DHCP) - IETF Standard (rfc2131) The TFTP Protocol – IETF Standard (rfc1350)
  • 6. ZERO TOUCH PROVISIONING (ZTP) • ZTP helps in reducing the several manual steps involved in provisioning a network element to two simple steps of Racking and Stacking and Powering the device on. • When it’s powered on, the switch sends out a request through DHCP server to get the location of its centrally stored image and configuration, which it downloads and runs. • ZTP automates steps like updating operating systems, deploying patches and bug fixes. 6
  • 7. METHODOLOGY • When a device that supports Zero-Touch Provisioning boots up and does not find the startup configuration (during initial installation), the device enters the Zero- Touch Provisioning mode. • The device searches for a Dynamic Host Control Protocol (DHCP) server, bootstraps itself with its interface IP address, gateway, and Domain Name System (DNS) server IP address, and enables Guest Shell. • The device then obtains the IP address or URL of an HTTP/TFTP server and downloads the Python script to configure the device. • Guest Shell provides the environment for the Python script to run. Guest Shell executes the downloaded Python script and applies an initial configuration to the device. 7
  • 8. DHCP SERVER CONFIGURATION FOR ZTP • A DHCP server must be running on the same network as the new device that is being provisioned • When the new device is switched on, it retrieves the IP address information of the HTTP/TFTP server where the Python script resides, and the folder path of the Python script from the DHCP server. • The DHCP server responds to DHCP discovery events with the following options: • Option 150—(Optional) Contains a list of IP addresses that points to the HTTP/TFTP server on the management network that hosts the Python scripts to be run. • Option 67—Contains the Python script file path on the HTTP/TFTP server. 8
  • 9. ADVANTAGES OF ZERO TOUCH PROVISIONING • Reduce costs and save time for deployments • More efficient use of staffing resources • Minimize configuration errors • Reduce number of tools required • Eliminate the need for extra equipment 9
  • 10. NETWORK TOPOLOGY • CSR1000V - New device to be provisioned • C3725 - DHCP Server • Network Automation - TFTP Server containing the Python script 10
  • 11. DHCP SERVER CONFIG • Network – 192.168.0.0/24 • TFTP Server Address – 192.168.0.2 • File Name – ztp_trial.py 11
  • 14. ROOT CAUSE ANALYSIS (RCA) • RCA is applied to methodically identify and correct the root causes of events, as opposed to simply addressing their symptomatic result. • “Root cause” may be described as the point in a causal chain where applying a corrective action or intervention would prevent the problem from occurring. 14
  • 15. EXAMPLE 1. If the Router03 node goes down, there is no response from other interfaces and IP addresses that Router03 has. 2. A large number of failure events occurs. 3. The Monitoring Manager decides that the lack of responses from IP addresses was caused by the interface failures, and then suppresses the corresponding incidents. 4. Based on the fact that communication was lost at neighboring nodes, the Monitoring Manager decides the root cause is the Router03 node going down. The Monitoring Manager also decides that the interface failures were caused by the node going down and associates the interface failures with the Router03 node going down. 5. The Router03 node going down is reported as the root-cause incident. 15
  • 16. FAILURE IN MIDDLE-LEVEL SWITCH Detailed failure: The middle-level switch C2 went down. Events that occur: • Communication with C2 is unavailable. • Each node interface connecting with C2 went down. The Monitoring Manage handles this situation as follows: • Detects the failure of the C2 node. • Decides that each interface connecting with C2 went down because of the failure of C2, and then suppresses the corresponding incidents. As a result, the Monitoring Manager reports only the failure of C2 as the root-cause incident. 16
  • 17. Netmiko is an open-source library designed to simplify SSH management across a wide range of network devices from various vendors including Cisco, Arista, and Juniper Networks 17
  • 18. SSH
  • 23. 23
  • 24. 24
  • 30. DJANGO FRAMEWORK • Django is a free and open-source web application framework used for web development. 30
  • 31. WEB PAGE • Homepage • Network Topology Mapper • Root Cause Analyzer 31
  • 33. 33
  • 34. 34
  • 35. 35
  • 36. 36
  • 38. CONSTRAINTS 38 The DHCP Server and the TFTP/HTTP Server must be in the same network as the new one that is getting provisioned. This method cannot be used for old routers that doesn’t support Zero Touch Provisioning.
  • 39. CONCLUSION 39 The process from initial configuration to error detection which were done manually have been successfully automated with the help of Python. And the tool is integrated with Django to create a web UI displaying the information it learned from the network and displaying the Root Cause in case of a failure in the network.
  • 40. FUTURE WORK 40 A ZTP Process with more templates could be used to provision a variety of devices. The Network Topology Mapper and Root Cause Analyzer get their data from the routers using netmiko. NETCONG and YANG could be used to get the needed data to make the process faster.
  • 41. REFERENCES [1] Jürgen Schönwälder, Martin Björklund ,Phil Shafer "Network configuration management using NETCONF and YANG",October 2010, IEEE Communications Magazine 48(9):166 - 173. [2] Tarik Taleb , Ibrahim Afolabi, et al,"On Multi-Domain Network Slicing Orchestration Architecture and Federated Resource Control", IEEE Network ( Volume: 33, Issue: 5, Sept.-Oct. 2019 ). [3] Yuri Demchenko, Sonja Filiposka, Raimundas, et al, "Enabling Automated Network Services Provisioning for Cloud-Based Applications Using Zero Touch Provisioning", 2015 IEEE/ACM 8th International Conference on Utility and Cloud Computing (UCC). [4] Adnan Hamad, DIngli Yu, J B Gomm, Mahavir S Sangha, “Fault Detection and isolation for engine under closed-loop control”, Sept 2012, IEEE. 41
  • 42. 42
  • 43. THANK YOU L.SAI KUMARESH 17BEC1184 43

Editor's Notes

  • #3: https://blog.technologent.com/7-good-reasons-network-automation https://blogs.vmware.com/networkvirtualization/2020/06/7-reasons-why-network-automation.html/