Description

The Course Name: APFISP-Advanced Programming For Internet Service Provider Backbone Solutions with Python v3.0

The Duration: 5 Days

The Overview:

The purpose of this course is to teach participants programming knowledge for using at Cisco IOS-XR Solutions.

What You Will Learn:

This course is specifically designed for non-programmer IT administrators who want to gain the knowledge, skills and ability to write programs with Python to interact with different devices and services through RESFful APIs for IOS-XR Solutions.

The Course Index:

Day 1

  • What is Cloud Computing
  • Understanding Cloud
  • Layers of Cloud Computing (IaaS, PaaS, SaaS) Types of clouds  (Public, Private, Hybrid)
  • Cloud Management Platforms (CMP)
  • OpenStack Introduction
  • SOFTWARE-DEFINED NETWORKING (SDN)
  • What is SDN, really
  • Why SDN?
  • Separation of Control and Data planes
  • OpenFlow Introduction
  • SDN Controllers
  • Players in the SDN Ecosystem
  • SDN Open Source Programming Introduction
  • Comparing different programming languages
  • Why Python?
  • Python2 vs. Python3
  • Installing Python
  • Interactive Python Interpreter
  • Python Script
  • Reserved Words
  • Basic Syntax
  • Lines
  • Comments
  • Errors (syntax, exceptions)
  • Numeric Types
  • Mutable vs. Immutable Objects
  • Naming Objects (Identifiers)

Day 2

  • Strings
  • String Methods
  • Formatting strings
  • Reading From Input
  • Boolean
  • Built-in Functions
  • Type Conversion
  • Statements
  • Operators
  • Operators Precedence
  • Flow Control and Decision Making
  • Code Blocks and Indentation
  • While Loop
  • Loop Control Statements (break, continue, pass)
  • Lists and Tuples
  • Iteration
  • List Operations and Methods
  • Nested lists
  • Packing and Unpacking

Day 3

  • Dictionaries
  • Dictionary Operations and Methods
  • Nested dictionaries
  • Bytes and Bytearray
  • Unicode in Python v3.0
  • User Defined Functions
  • Function Positional Arguments
  • Function Keyword Arguments
  • Function Arguments Default Value
  • Variable Length Arguments
  • Scope of Variables
  • Modules
  • What is a module?
  • import Statement
  • Locating Modules dir( ) Function
  • Installing modules with pip
  • Some useful modules (sys, os, math, ip address,…)
  • Working with files
  • STDIN and STDOUT
  • Exceptions
  • Regular Expressions
  • Data formats (XML, JSON)

Day 4

  • Sockets programming
  • Automating Device Operations with SSH
  • HTTP
  • HTTP Methods (GET, POST, PUT, DELETE)
  • HTTP Request
  • HTTP Response
  • Basic Authentication
  • Cookies
  • Requests Module
  • HTTPS

Day 5

  • REST APIs
  • Postman
  • Working with simple RESTful APIs
  • APIC-EM API
  • Multi threading
  • IOS-XR and IOS-XR Programmability
  • IOS XR Programmability:
  • IOS XR NETCONF API
  • Initial System Configuration Using NETCONF
  • Interior Routing Configuration Using gRPC
  • MPLS and BGP Configuration Using Model-Drive Python APIs
  • IP Reachability Automation Using Ansible