Course Overview

Introducing Python and Web Services Protocols for Network Engineers 3.0 is a 4-day hands-on course that focuses on the interoperability of Python programming with Networking to prepare the Next Generation Engineers for Software Defined Networking. This class is designed for Network Engineers and Administrators looking to add necessary programming skills in preparation for various ACI and SDN technologies as well as interacting with WEB Services on appliances such as the F5, A10, and UCS. The course has been modified to emphasize the skillset of data extraction for interacting with BIG DATA platforms.

To participate in the hands-on labs in this class, you need to bring a laptop computer with the following:

  • Windows 7 or 8.1 or 10 is recommended. Mac OSX 10.6 or greater is supported as well.
  • Intel Celeron or better processors are preferred.
  • 1 GB or more of RAM
  • Browser Requirements: Internet Explorer 10 or greater or Mozilla Firefox. (Safari and Mozilla Firefox for Mac OSX)
  • All students are required to have administrator rights to their PCs and cannot be logged in to a domain using any Group Policies that will limit their machine’s capabilities.
  • If you do not have administrator rights to your PC, you at least need permissions to download, install, and run Cisco Any Connect Client.
  • If you are participating in a WebEx event, it is highly recommended to take this class at a location that has bandwidth speeds at a minimum of 1 Mbps bandwidth speeds.
CLASS INFORMATION
Price: 
Call for Pricing
Duration: 
4 days
  • Upon completing this course, the student will be able to meet the following objectives:

    • Understand and describe basic and advanced Python terminologies
    • Identify Python script errors and correct
    • Query and reconfigure networking devices using Python scripts
    • Introduction to RESTful API utilizing JSON and XML
    • Apply Web Services Protocols to Multivendor Platforms (The CSR 1000v is used as the platform for demonstration)
  • Module 1

    Lesson 1: Basic Constructs

    This lesson describes foundational terminology within Python. Upon completing this lesson, the student will be able to explain many of the basic constructs, including their role within the programming language.

    This ability includes being able to meet these objectives:

    • Describe and execute strings
    • Describe and execute printing
    • Describe and execute variables
    • Describe and execute built in methods
    • Describe and execute input from users
    • Describe Boolean

    Lesson 2: Advanced Constructs

    This lesson describes more of the advanced foundational terminology within Python. Upon completing this lesson, the student will be able to explain many of the advanced constructs, including their role within the programming language.

    This ability includes being able to meet these objectives:

    • Describe and execute redundant scripts
    • Describe and execute functions
    • Describe and execute classes

    Lesson 3: Scaling Python

    This lesson will begin to apply the Python programming language to execute basic networking tasks. Upon completing this lesson, the student will be able to apply the constructs in the previous lessons to execute reading and writing to file tasks.

    This ability includes being able to meet these objectives:

    • Describe and execute Reading Files scripts
    • Describe and execute Writing to File scripts
    • Describe and execute Reading and Writing to Spreadsheets
    • Describe Reading and Writing to Databases
    • Describe and execute substituting strings and integers
    • Describe and execute while loops
    • Describe and execute for loops and lists
    • Describe and execute slicing
    • Updating and edit a list
    • Error checking

    Lesson 4: Dictionaries and Regular Expressions

    This lesson will detail Dictionaries and Regular Expressions and it’s use within the Python Programming language. Upon completing this lesson, the student will be able explain and construct programs that include dictionaries and regular expressions.

    This ability includes being able to meet these objectives:

    • Describe and execute dictionaries
    • Delete dictionaries
    • Describe and execute dictionaries with lists
    • Describe and execute Regular expressions (match, search, findall, sub)

     

    Module 2

    Lesson 1: Introduction to Web Services Protocols

    This lesson will detail the basic Web Services Protocols used throughout the course. The RESTful API and Management Information Model are introduced as an extension of the common CLI over SSH method for accessing data.

    This ability includes being able to meet these objectives:

    • Describe the common Web Services Protocols and Transport methods
    • Describe The Management Information Tree view of accessing objects
    • Describe Object naming conventions
    • Describe what an encoded document is in relation to plain text.

    Lesson 2: XML and JSON

    This lesson will detail the properties and formatting of an encoded documents as a means of accessing displaying data. This is a prerequisite to understanding how information is manipulated or extracted from an appliance that offers a web based service.

    This ability includes being able to meet these objectives:

    • Describe basic XML concepts
    • Describe the format of an XML document
    • Describe basic JSON concepts
    • Describe the format of a JSON document

    Lesson 3: Data Models

    This lesson introduces XML as the common data model upon which many platforms utilize today. Although these models are evolving into models such as YANG, it is not a primary focus of the course as extraction is the goal no matter what the model is.

    This ability includes being able to meet these objectives:

    • Describe the generic parts of an XML Schema
    • Describe the flow of how an XML Schema is used

    Lesson 4: Modifying the Schema

    This lesson introduces the various ways to modify and read objects that are contained within a schema.

    This ability includes being able to meet these objectives:

    • Use CURL to post and retrieve data from a schema
    • Use POSTMAN to post and retrieve data from a schema
    • Use Python with a native API to an appliance
    • Use Python without a native API to an appliance

     Lesson 5: Data Extraction and Manipulation

    This lesson teaches the use of taking extracted formatted documents and parsing them for data. Network Engineers gain the benefit of being able to provide data scientists with the data necessary to use the data in a meaningful way.

    This ability includes being able to meet these objectives:

    • Load and parse a JSON Document
    • Load and Parse an XML Document
  • DA1: The Basic Script
    DA2: Introduction to the SSH Script
    Lab 1: Scaling SSH Script-1
    Lab 2: Scaling SSH Script-2
    Lab 3: Efficiency of Functions
    Lab 4: Reading and Writing to Files-1
    Lab 5: Reading and Writing to Files-2
    Lab 6: Advanced SSH Script
    Lab 7: Working with Regular Expressions
    Lab 8: Pinger Detector
    Lab 9: VLAN Checker
    Lab 10: Final Mentored Lab
    Lab 11: Challenge-1
    Lab 12: Challenge-2
    Lab 13: CURL
    Lab 14: POSTMAN
    Lab 15: Python with Web Services

  • The primary audience for this course is as follows:

    • Network Administrators
    • Network Engineers
    • Network Operations Technicians
    • Students interested in learning about programming