全国统一学习专线 8:30-21:00
网络自动化编程课程大纲
第 1 天
1、自动化运维课程简介:为什么网络需要变革、传统网络管理存在的问题、课
程具体内容、就业情况、入行须知
2、认识 Python 与编程语言:发展历史;分类;优缺点;应用场景
3、Python 环境安装:编译器,交互式编程界面,集成开发平台 IDE
4、Python 变量及其类型;内存底层的处理机制;标识符和关键字;运算符
5、Python 的垃圾回收机制
实验一:实验环境准备:Anaconda;Jupyter Notebook;VS Code;PyCharm;
安装插件
实验二:Python 变量、标示符和运算符的使用、规则与技巧
第 2 天 1、Python 数据类型之数值与字符串;进制转换;字节转换
2、面向过程编程核心思想与三大程序结构:顺序语句、选择语句和循环语句
3、Python 的数据结构之列表、字典、集合、元组
4、Python 函数编程(1):函数的定义与调用、文档说明
实验一:Python 选择语句:if;elif;else 循环语句:while;for;break;continue
实验二:Python 数据类型与数据结构、使用技巧与常见操作方法
实验三:Python 函数的基础使用
第 3 天 1、Python 函数编程(2):参数、返回值、嵌套调用
2、Python 函数编程(3):作用域、局部变量、全局变量、深度理解之内存引用
3、Python 函数编程(4):常见模块讲解(time、datetime、range、random) 4、Python 函数编程(5):闭包、装饰器、迭代器、生成器
实验一:函数参数以及返回值相关练习
实验二:函数做字典的值
实验三:模拟交换机端口的流量统计
第 4 天 1、文件与 I/O(1):文件操作、文件的打开与关闭
2、文件与 I/O(2):文件读写,文件的定位;文件的增删改查;
3、面向对象编程(1):面向对象编程核心思想
4、面向对象编程(2):类的定义以及如何产生对象
5、面向对象编程(3):self;各种魔法方法;属性与方法的结合
实验一:向文件里面写入内容,对不同的用户自动生成密码
实验二:对文件中的某些内容进行修改
实验三:定义类与创建对象:属性与方法
第 5 天 1、面向对象编程(4):属性隐藏与保护;继承;父类方法的使用;多态的思想
2、面向对象编程(5):类与对象中的属性;静态方法与类方法;单例模式;
3、异常处理(1):异常介绍;捕获异常;异常传递
4、异常处理(2):自定义异常与异常处理
实验一: 类与对象:交换机管理系统
实验二:单继承与多继承
实验三:类与对象中的属性;静态方法与类方法
实验四:如何定义,捕获并抛出异常
第 6 天 1、并发编程(1):操作系统发展史
2、并发编程(2):进程基本概念;进程的组成、标记;进程的调度;并行与并
发和串行;进程的状态
3、并发编程(3):同步与异步,阻塞与非阻塞
4、并发编程(4):创建多进程,进程并发下数据一致性问题
5、并发编程(5):线程的基本概念,线程的组成,创建线程
6、网络自动化中相关模块:telnetlib、paramiko、netsnmp 等
实验一:创建多线程函数实现同步执行
实验二:利用 telnetlib 模块登录交换机
实验三:利用 paramiko 模块登录交换机以及配置文件的上传和**
实验四:利用 netsnmp 模块实现交换机相关参数的获取
网络自动化编程,Netconf 与 Yang 编程
第 7 天 1、利用相关模块编写程序:实现网络自动化运维管理
2、Netconf 和 YANG 引入:网络管理已死,网络管理万岁(网络管理方式的改
变已不可避免)
3、YANG 基础:YANG 介绍;如何更好的描述数据;准确定义数据以及将数据
归类
4、利用 YANG 描述可能的事件;动作和 RPC
5、从 0 开始自主创建 YANG 文件
6、YANG 的扩展和偏离
实验一:实现交换机的批量登录;交换机的批量配置;交换机配置文件的批量上
传和**;对于交换机状态参数的批量监控;针对监控的结果执行相应的处理
第 8 天 1、Netconf 基础:Netconf 介绍;鉴权机制;Netconf 会话基本流程,能力集
交互;基本操作和能力集;消息框架和消息概述
2、 XML 标签、属性和命名空间
3 、 Netconf 基 本 操 作 : <get-config>,<get>,<edit-config>,<copyconfig>,<delete-config>,<lock>,<unlock>,<close-session>,<killsession>;更多 Netconf 操作
3、Schema1.0 能力以及主要操作场景介绍
4、ncclient 的安装;Netconf 会话的建立;基于 ncclient 进行基本的操作
5、Restconf 介绍:Restconf 与 Netconf 对比,阅读和导航 Restconf 资源
6、gNMI 介绍
实验一:编写 Netconf 文件,利用 ncclient 实现交换机端口的配置
实验二:配置 IPv4 静态路由