软件定义网络SDN基础教程教案_第1页
软件定义网络SDN基础教程教案_第2页
软件定义网络SDN基础教程教案_第3页
软件定义网络SDN基础教程教案_第4页
软件定义网络SDN基础教程教案_第5页
已阅读5页,还剩41页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

PAGE1课程名称:软件定义网络(SDN)基础教程总学时、学分:教学目的与要求:目的:培养高素质、拥有创新能力的网络设计人才和高级网络管理人才。要求:本课程的教学目标是使学生理解SDN网络的基本概念和原理,并掌握运用所学知识建设、配置、管理和维护网络的技能,以及培养学生在网络上获取、加工、发布信息的能力。具体来讲,就是使学生能够“懂、建、管、用”网络:“懂”是理解网络原理、相关协议和标准;“建”是掌握组建网络的工程技术;“管”是学会管理、配置和维护网络;“用”是在学会基本应用的基础上,学会使用将网络作为信息发布和管理的平台。教材及参考书目:教材:《软件定义网络(SDN)基础教程》参考书目:1.张娇,黄韬,刘韵洁等.走近SDN/NFV[M].北京:人民邮电出版社,2020.2.雷葆华等.SDN核心技术剖析和实战指南[M].北京:电子工业出版社,2013.3.杨泽卫,李呈等.重构网络:SDN架构与实现[M].北京:电子工业出版社,2017.4.鞠卫国,张云帆,乔爱锋等.SDN/NFV:重构网络架构建设未来网络[M].北京:人民邮电出版社,2017.5.黄韬,刘江,魏亮等.软件定义网络核心原理与应用实践[M].北京:人民邮电出版社,2014.考核方式及成绩计算方法:考核方式:闭卷成绩计算方法:期未考试成绩70%,平时成绩20%,实验成绩10%。课程教学日历课程名称:软件定义网络(SDN)基础教程授课学期:2022~2023第一学期周次章节及教学内容累计学时1~2第1章SDN基础知识1.1SDN概述1.2SDN的定义和架构1.3SDN特征——数据控制分离1.4SDN特征——网络可编程1.5本章小结1.6本章练习43~4第2章SDN仿真环境2.1配置Linux环境2.2Mininet简介2.2.1Mininet介绍2.2.2Mininet的安装和配置2.2.3Mininet常用命令2.3Mininet实验——可视化应用2.4Mininet实验——MAC地址学习2.5本章小结2.6本章练习45~6第3章SDN数据平面3.1数据平面简介3.1.1数据平面架构3.1.2SDN交换机3.2开源交换机OpenvSwitch3.2.1OpenvSwitch介绍3.2.2OpenvSwitch系统架构3.3OpenvSwitch实验——安装和配置3.4OpenvSwitch实验——网桥管理3.5OpenvSwitch实验——流表管理3.6OpenvSwitch实验——QoS设置及端口映射3.7本章小结3.8本章练习47~8第4章SDN控制平面4.1控制平面简介4.1.1SDN控制器架构4.1.2SDN控制器评估要素4.2开源控制器OpenDaylight4.2.1OpenDaylight的介绍4.2.2OpenDaylight代码解读4.3OpenDaylight实验——安装和配置4.3.1实验一OpenDaylight安装4.3.2实验二OpenDaylight配置4.4OpenDaylight实验——使用界面下发流表4.5本章小结4.6本章练习49~10第5章SDN接口协议5.1南向接口协议5.1.1OpenFlow协议5.1.2NETCONF协议5.2北向接口协议5.2.1RESTfulAPI简介5.2.2RESTfulAPI调测工具Postman5.3实验一使用OpenFlow协议建立连接5.4实验二使用Postman下发流表5.5本章小结5.6本章练习411~13第6章SDN基础应用开发6.1SDN应用开发简介6.2实验一防DDoS攻击SDN应用开发6.3实验二服务器灾备SDN应用开发6.4实验三简易负载均衡SDN应用开发6.5本章小结6.6本章练习614~16第7章SDN综合应用开发7.1应用开发背景7.2北向API列表配置7.3网络环境搭建7.3.1拓扑搭建7.3.2网络的SDN功能验证7.4防火墙应用开发7.4.1搭建流媒体服务7.4.2搭建Web服务7.4.2开发SDN防火墙应用7.5本章小结7.6本章练习6

第一章教学安排的说明章节题目:第1章SDN基础知识1.1SDN概述1.2SDN的定义和架构1.3SDN特征——数据控制分离1.4SDN特征——网络可编程1.5本章小结1.6本章练习学时分配:总4学时第1~2学时:1.1~1.2第3~4学时:1.3~1.6本章教学目的与要求:软件定义网络(SoftwareDefinedNetwork,SDN)是由美国斯坦福大学CleanSlate项目组提出的一种新型网络架构。其核心技术OpenFlow通过将网络设备的控制平面与数据平面相分离,实现了网络流量的灵活控制,为网络智能化奠定了基础,也为网络技术及应用的创新提供了良好的平台。本通过本章学习,使学生了解SDN发展历程,熟悉SDN的基础定义与架构模型,掌握SDN的两大特性。课堂教学方案课题名称、授课时数:第1章SDN基础知识,4学时授课类型(理论课、实验课、技法课、习题课等):理论课教学方法与手段(讲授、讨论、指导、多媒体等):多媒体教学目的要求:1.了解SDN发展历程。2.熟悉SDN的基础定义与架构模型。3.掌握SDN的两大特性。教学重点、难点:重点内容:了解SDN发展历程;熟悉SDN的基础定义与架构模型;掌握SDN的两大特性。难点:SDN的架构;SDN的特征。教学内容及组织安排:第1章SDN基础知识1.1SDN概述一、网络发展历史1.1969年启动了计算机网络开发计划——ARPANet,标志着现代互联网的诞生。2.1974年,首次提出OSI7层参考模型。同年12月,提出了TCP/IP。3.1983年,ARPANet宣布将过去的通信协议NCP向TCP/IP过渡。4.1984年,提出了开发一个分布式系统的设想。5.1991年夏,HTML、HTTP成功编制了第一个局部存取浏览器Enguire,随后通过不断演进最终形成了著名的万维网技术。6.1996年,互联网(Internet)一词广泛流传。之后10年,互联网基于“细腰”的设计理念成功容纳了各种不同的底层网络技术和丰富的上层应用,迅速风靡全世界。互联网最初设计的目标是要把分散的计算机连接起来,以达到资源共享的目的。二、传统网络面临的挑战网络从最初的端到端模型已经发展到今天诸如多租户数据中心等复杂的应用场景;用户需求从最初的单纯可达性到现在对服务质量、流量工程等多方面的需求;网络协议从最初的TCP/IP模型发展到了现在TCP/IP协议簇和上千种补丁协议。整个网络越来越复杂,但设备架构还是一如既往的封闭,缺少灵活性,难以跟上日益变化的应用需求。同时,由于设备门槛很高,核心技术掌握在少数大型公司手中,这就制约了新技术和新协议的部署与实施。SDN发展历程从2006年开始,斯坦福大学研究生MartinCasado参与了CleanSlate项目,并着手领导了一个叫作Ethane的项目。在2007年的SIGCOMM会议上,MartinCasado发表了一篇名为“Ethane:TakingControloftheEnterprise”的论文,该论文引起了学术界的广泛关注。2007年,MartinCasado联合NickMcKeown、ScottShenker等人共同创建了一个致力于网络虚拟化技术创新的公司——Nicira。2008年,NickMcKeown在SIGCOMM会议上发表文章“OpenFlow:EnablingInnovationinCampusNetworks”,首次提出了将OpenFlow协议用于校园网络的试验创新。OpenFlow开始正式进入人们的视野,SDN呼之欲出。2011年初,Google等企业共同成立了开放网络基金会(OpenNetworkingFoundation,ONF),并正式提出了SDN的概念。2013年4月,由Cisco、Juniper、Broadcom、IBM等公司主导的SDN开源控制器平台项目OpenDaylight,引发了IT界一次巨大的轰动。OpenDaylight项目的成立对SDN技术的发展具有里程碑式的意义,它代表了传统网络芯片、设备“巨头”对网络领域开源技术方向的认可。2014年4月,中国电信与华为联合宣布双方合作完成了全球首个运营商SDN商用部署,将SDN技术成功应用于数据中心网络。2014年8月,中国移动与华为合作利用SDN技术完成了政企专线业务在分组传送网(PacketTransportNetwork,PTN)中的改造,大幅提升了运维效率及带宽利用率。同年,中国联通首次成功实现了SDNIPRAN的商用,初步实现了运维精简、业务可视、快速创新的目标。2015年9月,中国联通发布了新一代网络架构CUBE-Net2.0白皮书,目标是基于SDN/NFV、云和超宽带技术实现网络重构。SDN技术是网络发展到这一阶段的必然产物,它的迅速发展自然也在情理之中。1.2SDN的定义和架构1.2.1SDN的定义SDN定义为一种数据控制分离、软件可编程的新型网络架构,采用了集中式的控制平面和分布式的转发平面,两个平面相互分离。控制平面利用控制-转发通信接口对转发平面上的网络设备进行集中式控制,并向上提供灵活的可编程能力,具备以上特点的网络架构都可以被认为是广义的SDN技术。1.2.2SDN的架构ONF认为SDN的最终目标是为应用提供一套完整的编程接口,上层应用可以通过这套编程接口灵活地控制网络中的资源以及经过这些网络资源的流量,并能按照应用需求灵活地调度这些流量。ONF定义的架构共由4个平面组成,即数据平面(DataPlane)、控制平面(ControlPlane)、应用平面(ApplicationPlane)以及右侧的管理平面(ManagementPlane)。各平面之间使用不同的接口协议进行交互。1.3SDN特征——数据控制分离1.3.1基本概念1、控制平面二层控制平面主要关注硬件或物理地址(MAC地址)。三层控制平面则侧重完成网络层寻址与转发,主要关注网络地址,如IPv4/IPv6。此外,还有一些著名的跨二、三层协议,例如MPLS协议、以太网虚拟专用网络EVPN协议和位置/身份标识分离协议(LocatorIDSeparationProtocol,LISP)等。数据平面数据平面的首要工作是通过一系列链路级操作采集传入的数据分组,并执行基本的完整性检查。接下来,数据平面将查找FIB表,识别数据分组的目的地址,这样的流程被称为快速数据分组处理。除正常转发功能外,数据平面还可以根据特殊需要提供一些特定的辅助服务功能,例如访问控制列表(AccessControlLists,ACL)和服务质量(QualityofService,QoS)策略等。1.3.2数据控制分离历史1.早期的数据控制分离思想来源于电话网络。2.美国AT&T公司在20世纪80年代早期决定采取数据控制分离的网络模型,为电话网络引入了网络控制点NCP的概念。3.ForCES工作组是IETF在2002年专门成立的,并于2003年针对一般网络设备提出了控制平面-转发平面分离的基本结构。4.针对网络逻辑决策平面和分布式硬件设备结合过紧的问题,Greenberg等人重新设计了互联网控制和管理结构,提出将决策逻辑从底层协议中完全分离出来的4D项目。5.在4D项目的基础上,SANE项目出现了。6.2007年提出的Ethane项目则在SANE项目的基础上进行了功能扩展,将安全管理策略添加到网络管理中,扩充了中央控制器的管理功能。在以上相关工作的基础上,斯坦福大学的研究人员于2008年提出了OpenFlow技术。OpenFlow技术更加明确地提出了数据控制分离的基本概念,打破了传统网络的分布式框架,简化了网络管理和配置操作,实现了高层控制逻辑的灵活性和可部署性,为SDN概念和生态系统的发展迈出了重要的第一步。1.3.3SDN的数据控制分离SDN以网络设备的FIB表为界分割数据平面和控制平面,其中交换设备只是一个轻量级的、“哑”的数据平面,仅保留FIB和高速交换转发能力,而上层的控制决策全部由远端的统一控制器节点完成,在这个节点上,网络管理员可以看到网络的全局信息,并根据该信息做出优化的决策,数据平面和控制平面之间采用SDN南向接口协议连接,这个协议将提供数据平面可编程性。SDN数据控制分离的优点包括以下几点。全局集中控制与优化灵活可编程与高速转发相结合开放性和IT化SDN数据控制分离目前面临的问题包括以下几种。可扩展性问题一致性问题可用性问题1.4SDN特征——网络可编程1.4.1基本概念网络可编程性最初是指网络管理员可以通过命令行对设备进行配置,后来有了可编程路由器、NetFPGA等设备,这些设备的可编程性主要是对设备本身硬件电路级的可编程,即开发者是通过编译代码直接控制这些硬件来实现自己的协议或者功能。1.4.2网络可编程历史1、主动网络的基本思想主动网络的基本思想是,打破传统网络只能被动传输信息的模式,允许网络中的节点在用户数据上执行用户所需的计算。2、主动网络架构ARPA主动网络架构可以划分成3个主要层次,即主动应用(ActiveApplication,AA)、执行环境(ExecutionEnvironment,EE)和节点操作系统(NodeOS)。3、主动网络的数据模型(1)封装模型(CapsuleModel)(2)可编程路由器/交换机模型(ProgrammableRouter/SwitchModel)4、在主动网络发展的进程中出现了几个重要的项目①ANTS项目②SwitchWare项目③SmartPackets项目④Netscript项目1.4.3SDN的网络可编程1、SDN可编程的基本思想SDN的编程接口主要体现在北向接口上,北向接口提供了一系列丰富的API,开发者可以在此基础上设计自己的应用而不必关心底层的硬件细节,就像目前在x86体系的计算机上编程一样,不用关心底层寄存器、驱动等具体的细节。2、SDN相比于主动网络的优势(1)SDN应用多集中在对控制平面的编程上。(2)SDN有一些明确的应用场景(如在数据中心和网络试验床中)。(3)SDN出现时硬件技术能基本支撑它的发展。(4)SDN的发展方向更为明确。3、SDN在实现过程中遇到的问题(1)SDN功能实现起来复杂度较高(2)(1)目前主流的南向接口协议OpenFlow面临以下挑战:①处于被动演进的模式②转发层面无状态性(2)POF基本思想POF基于OpenFlow进行增强改进,POF的转发设备对数据报文处理转发中无须协议感知能力,网络行为完全由控制平面负责定义。在POF中,控制器主要通过定义数据的偏移和长度,识别已有协议类型和新的协议类型,并且可以控制所有协议报文的业务逻辑和转发规则。P4P4概念P4是一种声明式编程语言,通过P4开发者可以灵活地定义各种协议报文的格式。它主要用于编写程序以下达指令给数据转发平面的设备(如交换机、网卡、防火墙、过滤器等)处理数据分组。此外,P4程序具有很强的移植性,可适用于所有支持P4的转发设备。从本质上讲,通过P4语言,可以很大程度上提升网络的可编程性。无论是在软件设计(编程、调试、代码覆盖、模块检查等)方面,还是在网络系统的设计上,都给用户带来了很多好处。P4特性域可重构性协议无关目标无关1.5本章小结通过本章的学习可以看出,在SDN的发展过程中,虽然各大厂商和组织出于利益的考虑在协议标准以及架构方面存在一些分歧,但他们对SDN核心思想的理解都基本类似。SDN的核心思想就是要实现控制平面与数据平面分离,并使用集中式的控制器来完成对网络的可编程任务,而控制器通过北向接口和南向接口协议分别与上层应用和下层转发设备实现交互。正是这种控制和数据分离(解耦)的特点使SDN具有了强大的可编程能力。这种强大的可编程性使网络能够真正地被软件所定义,达到简化网络运维、灵活管理调度的目标。同时,为了使SDN能够实现大规模的部署,需要通过东西向接口协议支持多控制器间的协同。1.6本章练习课堂练习或讨论、布置作业:课后作业:第1章习题

第二章教学安排的说明章节题目:第2章SDN仿真环境2.1配置Linux环境2.2Mininet简介2.2.1Mininet介绍2.2.2Mininet的安装和配置2.2.3Mininet常用命令2.3Mininet实验——可视化应用2.4Mininet实验——MAC地址学习2.5本章小结2.6本章练习学时分配:总4学时第1~2学时:2.1~2.2第3~4学时:2.3~2.6本章教学目的与要求:传统的网络仿真平台(如NS2、OPNET)或多或少存在着某些缺陷,难以准确地模拟网络实际状态,并且不具备交互特性,这使得基于这些平台开发的代码不能直接部署到真实网络中。Mininet最重要的一个特点是,它的所有代码几乎可以无缝迁移到真实的硬件环境,方便为网络添加新的功能并进行相关测试。通过本章学习,使学生熟悉SDN仿真环境搭建的流程,掌握Mininet仿真平台的常规命令。帮助读者理解和掌握这套强大的仿真工具,以便搭建自己的SDN仿真环境。

课堂教学方案课题名称、授课时数:第2章SDN仿真环境授课类型(理论课、实验课、技法课、习题课等):理论课、实验课教学方法与手段(讲授、讨论、指导、多媒体等):多媒体教学目的要求:1.熟悉SDN仿真环境搭建的流程。2.掌握Mininet仿真平台的常规命令。3.熟悉Mininet可视化应用的使用方法。4.能够使用Mininet来进行实例开发。教学重点、难点:重点内容:熟悉SDN仿真环境搭建的流程;掌握Mininet仿真平台的常规命令;熟悉Mininet可视化应用的使用方法;能够使用Mininet来进行实例开发。难点:使用Mininet来进行实例开发。教学内容及组织安排:第2章SDN仿真环境2.1配置Linux环境1、VMware介绍VMwareWorkstation是美国VMware公司出品的一个用于运行虚拟机的软件。利用它,你可以在一台计算机上将硬盘和内存的一部分“拿出来”并虚拟出若干台计算机,虚拟的每台计算机可以运行单独的操作系统而互不干扰。这些“新”计算机各自拥有自己独立的CMOS、硬盘和操作系统,你可以像使用普通计算机一样对它们进行分区、格式化、安装系统和应用软件等操作,还可以将这几个“计算机”联成一个网络。在虚拟系统崩溃之后可直接删除,并不影响本机系统,本机系统崩溃后也不影响虚拟系统,可以下次重装后再加入以前做的虚拟系统。同时VMuareWorkstation也是唯一能在Windows和Linux主机平台上运行的虚拟计算机软件。2、Ubuntu介绍Ubuntu是一个以桌面应用为主的开源GNU/Linux操作系统。Ubuntu基于DebianGNU/Linux,支持x86、amd64(x64)和PPC架构,由全球化的专业开发团队(Canonical公司)打造。Ubuntu基于Debian和GNOME,而从11.04版起,Ubuntu发行版放弃了GNOME,改为Unity。与Debian的不同之处在于,它每6个月会发布一个新版本。Ubuntu具有庞大的社区力量,用户可以方便地从社区获得帮助。Ubuntu对GNU/Linux的普及特别是桌面普及做出了巨大贡献,由此使更多人可以共享开源的成果。在VMwareWorkstation上安装Ubuntu操作系统首先在VMware官方网站下载并且安装VMwareWorkstation(后文简称VMware)。然后在Ubuntu官网下载Ubuntu镜像系统。2.2Mininet简介2.2.1Mininet介绍1、Mininet概念Mininet是一个可以在有限资源的普通计算机上快速建立大规模SDN原型系统的网络仿真工具。该系统由虚拟的终端节点(End-Host)、OpenFlow交换机、控制器(也支持远程控制器)组成,这使得它可以模拟真实网络,可对各种想法或网络协议等进行开发验证。Mininet文件结构Mininet源代码中共有bin、custom、doc、mininet.egg-info、build、debian、examples、dist、mininet、util这10个子目录以及mnexec.c、setup.py等文件2.2.2Mininet的安装和配置1.Mininet安装方法①Mininet的VM安装②本地安装Mininet源代码③安装Mininet文件包2.2.3Mininet常用命令Mininet常用的交互命令命令作用help默认列出所有命令文档,后面加命令名则介绍该命令用法。gterm给定节点上开启gnome-terminal。注:可能导致mn崩溃xterm给定节点上开启xtermintfs列出所有的网络接口iperf两个节点之间进行简单的iPerfTCP测试iperfudp两个节点之间用指定带宽的UDP进行测试net显示网络连接情况noecho运行交互式窗口,关闭回应(Echoing)pingpair在前两个主机之间进行ping测试source从外部文件中读入命令dump显示所有节点的具体信息dpctl在所有交换机上用dptcl执行相关命令,本地为tcp:6634link禁用或启用两个节点之间的链路nodes列出所有的节点信息pingall所有主机节点之间进行ping测试py执行Python表达式sh运行外部Shell命令quit/exit退出Mininet2.3Mininet实验——可视化应用1.实验目的(1)了解Mininet的可视化界面。(2)熟练掌握使用Mininet的可视化界面来生成拓扑。2.实验环境3.实验内容利用Mininet的可视化应用完成自定义拓扑的创建。实验原理实验步骤2.4Mininet实验——MAC地址学习1.实验目的(1)了解交换机的MAC地址学习过程。(2)了解交换机对已知单播、未知单播和多播帧的转发方式。2.实验环境3.实验内容利用Mininet模拟二层交换机和两个主机,通过两个主机通信了解交换机MAC地址学习过程。实验原理实验步骤2.5本章小结Mininet采用轻量级的虚拟化技术,研究者只需在自己的个人计算机上即可搭建一个用户自定义拓扑的SDN。用户可以基于这一工具方便、灵活地进行网络功能的测试和验证,而一旦验证成功,结果几乎可以不做修改就能轻松部署到真实的硬件环境中。本章通过介绍Mininet基本原理给读者一个总体的认识,再从Mininet的安装使用、源代码分析以及开发实例等方面指导读者一步步深入了解Mininet的核心。可以说,Mininet为SDN的学习和研究提供了一个实用的仿真工具,大大缩短了SDN应用的开发测试周期,为推动SDN技术的研究发展和成果落地起到了重要作用。2.6本章练习课堂练习或讨论、布置作业:课后作业:第2章习题

第三章教学安排的说明章节题目:第3章SDN数据平面3.1数据平面简介3.1.1数据平面架构3.1.2SDN交换机3.2开源交换机OpenvSwitch3.2.1OpenvSwitch介绍3.2.2OpenvSwitch系统架构3.3OpenvSwitch实验——安装和配置3.4OpenvSwitch实验——网桥管理3.5OpenvSwitch实验——流表管理3.6OpenvSwitch实验——QoS设置及端口映射3.7本章小结3.8本章练习学时分配:总4学时第1~2学时:3.1~3.2第2~4学时:3.3~3.7本章教学目的与要求:SDN的核心思想是将数据平面与控制平面分离以及提供开放的编程接口。SDN中数据平面的交换设备专注于高速转发数据分组,而转发的决策由控制平面的控制器通过南向接口协议统一分发,从而降低了设备复杂度,提高了网络控制管理效率。SDN作为一种革新性的网络新技术,当它在业界真正落地的时候,对传统交换设备产生了什么样的影响?网络设备厂商又该如何应对?通过本章学习,使学生熟悉SDN的数据平面架构,了解SDN的软、硬件交换机,掌握OpenvSwitch的安装和配置方法,能够使用OpenvSwitch进行实例开发。

课堂教学方案课题名称、授课时数:第3章SDN数据平面授课类型(理论课、实验课、技法课、习题课等):理论课、实验课教学方法与手段(讲授、讨论、指导、多媒体等):多媒体教学目的要求:1.熟悉SDN的数据平面架构。2.了解SDN的软、硬件交换机。3.掌握OpenvSwitch的安装和配置方法。4.能够使用OpenvSwitch进行实例开发。教学重点、难点:重点内容:熟悉SDN的数据平面架构;了解SDN的软、硬件交换机;掌握OpenvSwitch的安装和配置方法;能够使用OpenvSwitch进行实例开发。难点:使用OpenvSwitch进行实例开发教学内容及组织安排:第3章SDN数据平面3.1数据平面简介3.1.1数据平面架构一、传统数据平面传统网络的设计遵循OSI的7层模型,交换设备包括了工作在第二层(数据链路层)的交换机和工作在第三层(网络层)的路由器。交换机可以识别数据分组中的MAC地址,并基于MAC地址来转发数据分组;路由器可以识别数据分组中的IP地址,并基于IP地址来转发数据分组和实现路由。现在也有一些三层交换机,它结合了二层交换的简易敏捷性与三层路由的部分智能特性。数据平面通过硬件转发芯片对数据分组进行高速转发,基本功能主要包括转发决策、背板转发以及输出链路调度等几个方面。传统网络的数据平面和控制平面在物理上是完全紧密耦合的,分布在各个单独的交换设备中,并只支持制定好的网络标准协议,用户无法部署新的网络策略。加之各厂商的设备接口均对外封闭,用户亦无法自行管理和调用网络设备,在使用厂商的设备时不得不同时依赖其软件和服务,网络相对僵化,缺乏足够的灵活性。二、SDN数据平面不同于传统交换设备,SDN将交换设备的数据平面与控制平面完全解耦,所有数据分组的控制策略由远端控制器通过南向接口协议下发,网络的配置管理也同样由控制器完成,这大大提高了网络管控的效率。交换设备只保留数据平面,专注于数据分组的高速转发,降低了交换设备的复杂度。从这个意义上来说,SDN中交换设备不再有二层交换机、路由器、三层交换机之分。SDN交换设备的基本功能仍然包括转发决策、背板转发、输出链路调度,但在功能的具体实现上与传统网络的交换设备有所不同。3.1.2SDN交换机1.SDN硬件交换机(1)基于ASIC芯片的品牌交换机NECIP8800系列交换机IBMRackSwitchG8264交换机HPSDN系列交换机Arista7150S系列和7500E交换机DCNCS16800系列交换机CiscoNexus9000系列交换机JuniperEX9200系列交换机H3CS12500系列交换机博科ICX7450交换机(2)基于ASIC芯片的白盒交换机盛科V330、V350、V580白盒交换机Pica8白盒交换机系列基于NP的SDN交换机基于NetFPGA的SDN交换机SDN软件交换机OpenvSwitchPantouIndigoLINCOpenFlowClickOF1.3SoftSwitch3.2开源交换机OpenvSwitch3.2.1OpenvSwitch介绍OpenvSwitch是由Nicira、斯坦福大学、加利福尼亚伯克利分校的研究人员共同提出的开源软件交换机。它基于C语言开发,遵循Apache2.0开源代码版权协议,能同时支持多种标准的管理接口和协议(如NetFlow、sFlow、SPAN、RSPAN、CLI、LACP、802.1ag等),支持跨物理服务器分布式管理、扩展编程、大规模网络自动化。OpenvSwitch具备很强的灵活性,可以在管理程序中作为软件交换机运行,也可以直接部署到硬件设备上作为控制层。利用其作为SDN的基础设施层转发设备,可以大幅降低部署成本,还可以提高网络的灵活性以及扩展性。基于OpenvSwitch的典型组网如下图所示。3.2.2OpenvSwitch系统架构OpenvSwitch系统架构分为内核空间(KernelSpace)、用户空间(UserSpace)、配置管理层(NetworkDevice)这3部分。其中,内核空间包含OVS模块和流表,用户空间运行着OVS的守护进程(ovs-vswitchd)和数据库(ovsdb-server),配置管理层包括ovs-dpctl、ovs-appctl、ovs-vsctl和ovs-ofctl等,OpenvSwitch系统架构如下图所示。OpenvSwitch各模块简要介绍如下。ovs-vswitchd:主要模块,实现vSwitch的守候进程(Daemon),包括一个支持流交换的DVS内核模块。ovsdb-server:轻量级数据库服务器,保存配置信息,ovs-vswitchd通过这个数据库获取配置信息。ovs-dpctl:用来配置vSwitch内核模块的一个工具。ovs-appctl:一个向ovs-vswtichd的守护进程发送命令的程序。ovs-vsctl:主要获取或更改ovs-vswitchd的配置信息,此工具操作时会更新ovsdb-server中的数据库。OpenvSwitch(datapath):内核模块,根据流表匹配结果做相应处理。ovs-ofctl:查询和控制OpenFlow虚拟交换机的流表。3.3OpenvSwitch实验——安装和配置1.实验目的(1)了解OpenvSwitch的背景、功能和基本组成结构。(2)掌握安装部署OpenvSwitch的方法,能够独立解决安装部署中遇到的问题。2.实验环境3.实验内容(1)了解OpenvSwitch的版本信息以及安装需求,实现源代码安装OpenvSwitch。(2)配置、运行OpenvSwitch,验证安装是否正确。4.实验原理5.实验步骤3.4OpenvSwitch实验——网桥管理1.实验目的(1)了解网桥(Bridge)的基本概念以及工作原理。(2)掌握网桥相关命令的基本使用方法。2.实验环境3.实验内容(1)学习网桥的基本理论知识。(2)学习常用的网桥命令,进行网桥和端口的添加、删除、查看等操作。4.实验原理5.实验步骤3.5OpenvSwitch实验——流表管理1.实验目的(1)了解OpenvSwitch流表的基本概念。(2)掌握流表的基本命令及其使用方法。2.实验环境3.实验内容(1)学习OpenvSwitch流表的概念、作用及常用命令。(2)进行流表的添加、查看等操作。4.实验原理5.实验步骤3.6OpenvSwitch实验——QoS设置及端口映射1.实验目的(1)了解QoS、端口映射等相关网络知识。(2)掌握利用OpenvSwitch调控网络性能。2.实验环境3.实验内容(1)利用OpenvSwitch设置端口速率,通过对比主机间的吞吐量,直观地展示出利用OpenvSwitch配置QoS的效果。(2)学习端口映射的作用,利用OpenvSwitch设置端口映射。4.实验原理5.实验步骤3.7本章小结本章首先分析了交换设备架构,对比了传统交换设备和SDN交换设备的不同,并介绍了市面上的SDN软件、硬件交换机,最后通过实验介绍了OpenvSwitch关键组件、安装配置和应用实例。传统网络中,数据平面与控制平面紧密耦合,不利于网络的管理和升级。SDN中控制平面从交换设备中剥离,控制器通过南向接口协议统一管控交换设备,而交换设备只负责高速转发数据分组。这一方面降低了设备的复杂度,便于对网络转发进行集中、灵活管控,另一方面也对交换设备和芯片的设计带来了新的挑战。与此同时,SDN给网络设备市场带来新的气象,网络设备市场多年以来形成的稳定格局逐渐被打破,传统设备厂商开始正视SDN带来的挑战并调整自己的战略,大量创新公司抓住技术变革的机遇推出白盒交换机。可以说,SDN在对现有网络架构进行革新的同时,也给网络设备市场带来了重新“洗牌”的契机,使该领域的产业前景充满了各种可能性。3.8本章练习课堂练习或讨论、布置作业:课后作业:第3章课后习题

第四章教学安排的说明章节题目:第4章SDN控制平面4.1控制平面简介4.1.1SDN控制器架构4.1.2SDN控制器评估要素4.2开源控制器OpenDaylight4.2.1OpenDaylight的介绍4.2.2OpenDaylight代码解读4.3OpenDaylight实验——安装和配置4.3.1实验一OpenDaylight安装4.3.2实验二OpenDaylight配置4.4OpenDaylight实验——使用界面下发流表4.5本章小结4.6本章练习学时分配:总4学时第1~2学时:4.1~4.2第3~4学时:4.3~4.6本章教学目的与要求:SDN控制平面是连接底层交换设备与上层应用的桥梁。一方面,控制器通过南向接口协议对底层交换设备进行集中管理、状态监测、转发决策以处理和调度数据平面的流量;另一方面,控制器通过北向接口协议向上层应用开放多个层次的可编程能力,允许网络用户根据特定的应用场景灵活地制定各种网络策略。既然控制器在SDN中具有核心作用,那么它的架构是怎样的?评估一个控制器需要考虑哪些因素?通过本章的学习,要求学生掌握SDN控制平面的关键技术以及OpenDaylight控制器的基本使用。

课堂教学方案课题名称、授课时数:第4章SDN控制平面授课类型(理论课、实验课、技法课、习题课等):理论课、实验课教学方法与手段(讲授、讨论、指导、多媒体等):多媒体教学目的要求:1、掌握SDN控制器的架构;2、了解OpenDaylight的代码结构;3、熟悉OpenDaylight的安装和配置;4、能够使用OpenDaylight界面下发流表。教学重点、难点:重点内容:SDN控制器的架构。SDN控制器的评估要素。OpenDaylight的基本认识。OpenDaylight的代码结构。OpenDaylight的安装和配置方法。使用OpenDaylight界面下发流表的方法。难点:SDN控制器架构,OpenDaylight控制器。教学内容及组织安排:第4章SDN控制平面4.1控制平面简介控制器是SDN的重要组成部分,其设计与实现是SDN最为关键的技术环节之一,因此理解控制器的架构对于深入研究SDN技术是极其重要的。本节将首先对SDN控制器的架构进行深入剖析,并在此基础上给出SDN控制器的主要评估要素,希望能够使读者在整体上对SDN控制器有一个全面、深入的理解。4.1.1SDN控制器架构控制器层次化架构被分为基本功能层与网络基础服务层两层。基本功能层基本功能层主要提供控制器所需要的基本功能。一个通用的控制器应该能够方便地添加接口协议,这对于动态灵活地部署SDN非常重要,因此在这一层首先要完成的就是协议适配功能。总结起来,需要适配的协议主要包含两类:用来与底层交换设备进行信息交互的南向接口协议用于控制平面分布式部署的东西向接口协议协议适配功能则主要有以下3个方面的作用:网络的维护人员可以根据网络的实际情况,使用较合适的协议来优化整个SDN;考虑到与传统网络的兼容性问题,可以借鉴使用现有网络协议作为南向、东西向接口协议,这样可以以最小的代价来升级和改造传统网络;通过协议适配功能,控制器能够完成对底层多种协议的适配,并向上层提供统一的API,达到对上层屏蔽底层多种协议的目的。网络基础服务层对于一个完善的控制器架构来说,仅实现基本功能层是远远不够的。为使开发者能够专注于上层应用的业务逻辑,提高开发效率,需要在控制器中加入网络基础服务层,以提供基础的网络功能。网络基础服务层中的模块作为控制器实现的一部分,可以通过调用基本功能层的接口来实现设备管理、状态监测等一系列基本功能。这一层涵盖的模块可以有很多,取决于控制器的具体实现4.1.2SDN控制器评估要素对OpenFlow的支持网络虚拟化网络功能可扩展性性能网络可编程性可靠性网络安全性集中管理和可视化控制器供应商4.2开源控制器OpenDaylight4.2.1OpenDaylight的介绍OpenDaylight项目在2013年年初由Linux协会联合业内18家企业(包括Cisco、Juniper、Broadcom等多家传统网络公司)创立,旨在推出一个开源的通用SDN平台。OpenDaylight项目的设计目标是降低网络运营的复杂度,扩展现有网络架构中硬件的生命期,同时能够支持SDN新业务和新能力的创新。OpenDaylight开源项目希望能够提供开放的北向API,同时支持包括OpenFlow在内的多种南向接口协议,底层支持传统交换机和OpenFlow交换机。OpenDaylight拥有一套模块化、可插拔且极为灵活的控制器,能够被部署在几乎所有支持Java的平台上。目前,OpenDaylight的基本版本已经实现了传统二、三层交换机的基本转发功能,并支持任意网络拓扑和最优路径转发。4.2.2OpenDaylight代码解读1.代码结构OpenDaylight由众多的子项目组成,涉及的代码较多。本小节在分析OpenDaylight代码的过程中,重点关注OpenDaylight的Controller项目中的代码,由此可以延伸到与之相关的其他项目。自OpenDaylight引入YANG模型对服务抽象层设计进行改进,代码结构以及实现方式发生了较大变化。2.代码解析1)控制器集群对于控制器来说,集群不是功能,而是控制器必需的基础框架。集群作为其他模块正常工作的重要保障,使得控制器不再是一个单点故障点,这就需要控制器有灾难恢复机制和控制器实例之间数据一致性保障。2)MD-SALDatastore本小节将了解与MD-SALDatastore相关的代码,理解MD-SAL如何配置应用和显示状态,以及数据模型与存储的关系。MD-SAL实例Toaster源码分析Toaster是OpenDaylightWiki上一篇特殊的示例,例子中详细讲解了如何通过MD-SAL框架开发南向及北向接口插件。这个实例主要帮助大家熟悉MD-SAL开发流程,以及如何与OSGi进行集成。Toaster可以认为是控制器的一个内部应用。通过学习它,可以理解OpenDaylight控制器基于MD-SAL设计的核心思想。4.3OpenDaylight实验——安装和配置4.3.1实验一OpenDaylight安装1.实验目的(1)了解OpenDaylight的背景和基本架构。(2)掌握安装、部署OpenDaylight的方法,能够独立解决实验过程中遇到的问题。2.实验环境3.实验内容(1)安装OpenDaylight组件,掌握一系列相关的安装、查询命令。(2)安装后进行简单的验证,确保OpenDaylight安装正确。4.实验原理5.实验步骤4.3.2实验二OpenDaylight配置OpenDaylight安装完成后,它的一些配置文件就保存在distribution-karaf-0.6.0-Carbon/configuration目录下。通过这些配置文件可以查看OpenDaylight运行时加载的模块以及控制器监听的端口、Web端口等。1.配置TCP监听端口2.配置Web服务端口3.配置Java环境4.4OpenDaylight实验——使用界面下发流表1.实验目的(1)了解YANGUI的功能特点,掌握YANGUI下发流表的方式及其在OpenDaylight架构中所起的作用。(2)通过下发流表,掌握数据包处理的流程及单级流表和多级流表的处理过程。2.实验环境3.实验内容(1)分别基于OpenFlowv1.0和OpenFlowv1.3下发流表,通过下发流表过程了解单级流表和多级流表的概念。(2)通过YANGUI下发流表来控制主机之间的连通性,并利用Scapy工具进行测试验证。4.实验原理5.实验步骤4.5本章小结本章主要介绍了OpenDaylight的概况、设计架构和工作原理,随后对其涉及的核心技术进行介绍,接着介绍了OpenDaylight代码解读,最后介绍了OpenDaylight的安装和配置、使用界面下发流表这两个实验。将理论与实际相结合,帮助读者掌握安装、部署OpenDaylight的方法,了解YANGUI的功能特点,掌握YANGUI下发流表的方式及其在OpenDaylight架构中所起的作用。通过下发流表,帮助读者掌握数据包处理的流程及单级流表和多级流表的处理过程。希望借此使得读者对OpenDaylight控制器形成一个更为全面、深刻的理解,为后续使用开发提供技术支撑。4.6本章练习课堂练习或讨论、布置作业:课后作业:第4章习题

第五章教学安排的说明章节题目:第5章SDN接口协议5.1南向接口协议5.1.1OpenFlow协议5.1.2NETCONF协议5.2北向接口协议5.2.1RESTfulAPI简介5.2.2RESTfulAPI调测工具Postman5.3实验一使用OpenFlow协议建立连接5.4实验二使用Postman下发流表5.5本章小结5.6本章练习学时分配:总4学时第1~2时:5.1第3~4学时:5.2~5.6本章教学目的与要求:SDN接口协议开放了SDN的可编程性,实现了SDN架构中各部分间的连接与通信。其中,南向接口协议完成控制平面与数据平面间的交互及部分管理配置功能,北向接口协议实现控制器与业务应用层间的交互,东西向接口协议负责控制器间的协同。这些接口协议实现了SDN灵活的可编程能力,是SDN的核心技术环节之一。通过本章的学习,要求学生重点掌握SDN南向接口协议和北向接口协议。

课堂教学方案课题名称、授课时数:第5章SDN协议接口授课类型(理论课、实验课、技法课、习题课等):理论课、实验课教学方法与手段(讲授、讨论、指导、多媒体等):多媒体教学目的要求:1、掌握OpenFlow协议的基本概念和架构;2、通过实验操作理解OpenFlow协议建立连接的交互过程;3、掌握NETCONF协议的基本概念和架构;4、通过实验操作理解NETCONF协议管理网络设备的过程;5、理解RESTfulAPI的概念和作用;6、通过下发流表实验学习Postman的使用方法。教学重点、难点:重点内容:1、OpenFlow协议;2、NETCONF协议;3、RESTfulAPI;4、Postman的使用;难点:OpenFlow协议流程、NETCONF协议管理网络设备的过程、RESTfulAPI。教学内容及组织安排:第5章SDN协议接口5.1南向接口协议5.1.1OpenFlow协议OpenFlow是基于网络中“流”的概念设计的一种SDN南向接口协议。1、OpenFlowv1.0协议OpenFlow流表流表项的结构分组头域计数器动作表流表的匹配OpenFlow安全通道OpenFlow安全通道的建立OpenFlow安全通道的维护OpenFlow协议消息Controller-to-Switch消息:Features、Configuration、Modify-State、Read-State、Send-Packet、BarrierAsynchronous消息:Packet-in、Flow-Removed、Port-Status、ErrorSymmetric消息:Hello、Echo、Vendor2、OpenFlow协议的演进3、OpenFlow协议面临的问题协议消息类型尚不完善控制平面的安全性与扩展性问题数据平面的设备性能问题5.1.2NETCONF协议1、NETCONF简介NETCONF定义了一种简单的管理网络设备的机制,通过该机制可以在设备中检索配置数据信息,使用相应的软件向设备上传新的配置数据。通过NETCONF协议,网络设备可以提供规范的应用程序接口(ApplicationProgrammingInterface,API),应用程序可以使用这个简单的API来发送和接收完整或部分的配置数据。2、NETCONF协议原理描述NETCONF协议采用了分层协议模型,初始的配置数据通过每一层对应的协议进行包装,然后向下一层提供相关的服务。采用这种分层架构能够将NETCONF复杂的整体拆分成相对独立的几层,让每层都只专注于协议的某个方面,将各层内部发生修改之后对其他层的影响降到最低,使得整个过程实现起来更加简单。NETCONF协议分成4层:内容层、操作层、消息层、传输层。NETCONF传输层面向连接身份认证、完整性和机密性强制性运输协议NETCONF消息层<rpc><rpc-reply><rpc-error><ok>NETCONF操作层NETCONF内容层5.2北向接口协议5.2.1RESTfulAPI简介RESTfulAPI指的就是REST风格的应用程序接口。REST主要有以下几个特点:资源统一资源标识符统一接口无状态5.2.2RESTfulAPI调测工具PostmanPostman是Google开发的一款功能强大的网页调试、发送网页HTTP请求,并能运行测试用例的Chrome插件。其主要功能如下。模拟各种HTTP请求Collection功能(测试集合)人性化的Response整理内置测试脚本语言设定变量与环境图Postman主界面5.3实验一使用OpenFlow协议建立连接1.实验目的(1)了解OpenFlow交换机与控制器建立TCP连接的过程。(2)掌握配置安全通道中OpenFlow版本的方法。(3)理解OpenFlow交换机和控制器的消息交互过程。2.实验环境3.实验内容(1)学习OpenFlow交换机和控制器的配置方式。(2)使用Wireshark抓包并进行分析,学习OpenFlow交换机与控制器的消息交互过程4.实验原理5.实验步骤5.4实验二使用Postman下发流表1.实验目的(1)掌握OpenFlow流表相关知识,理解SDN中L2、L3、L4层流表的概念。(2)学习并掌握使用Postman工具下发L2、L3、L4层流表的方法。2.实验环境3.实验内容(1)学习OpenFlow流表的组成,包头域的解析流程及流表的匹配流程。(2)设置OpenDaylight控制器对接OpenvSwitch交换机。(3)使用Postman工具,下发L2、L3、L4层流表并验证流表下发效果。4.实验原理5.实验步骤5.5本章小结SDN接口协议实现了SDN各部分之间的通信,在架构中起着至关重要的作用。南向接口协议作为SDN的指令集联系着控制平面与数据平面。其中,OpenFlow系列协议在技术上和市场上都较为成熟,本章对此做了深入的介绍;而NETCONF协议提供了网络设备管理机制,其良好的功能性和扩展性使其被主流设备厂商所支持。北向接口协议实现了控制器与上层应用间的交互,为SDN设计者提供了二次开发的能力,完备的北向接口是SDN强大生命力的根本保证之一。由于北向接口尚未成熟,本章仅对部分相对有代表性的RESTfulAPI进行了简要的介绍,并介绍了RESTfulAPI的调测工具Postman。本章对SDN接口协议进行了较为广泛的介绍,目的是希望能够帮助读者对SDN形成一个更为全面和多元化的理解。5.6本章练习课堂练习或讨论、布置作业:课后作业:第5章习题

第六章教学安排的说明章节题目:第6章SDN基础应用开发6.1SDN应用开发简介6.2实验一防DDoS攻击SDN应用开发6.3实验二服务器灾备SDN应用开发6.4实验三简易负载均衡SDN应用开发6.5本章小结6.6本章练习学时分配:总6学时第1~2学时:6.1~6.2第3~4学时:6.3第5~6学时:6.4~6.6本章教学目的与要求:通过本章学习,使学生对SDN应用开发的概念、常见开发场景等内容要有所了解,同时还要理解常见开发场景的模块架构,掌握SDN应用开发方法和注意事项。

课堂教学方案课题名称、授课时数:第6章SDN基础应用开发,6学时授课类型(理论课、实验课、技法课、习题课等):实验课教学方法与手段(讲授、讨论、指导、多媒体等):多媒体教学目的要求:对SDN应用开发的概念、常见开发场景等内容要有所了解,同时还要理解常见开发场景的模块架构,掌握SDN应用开发方法和注意事项。教学重点、难点:重点:1、常见的SDN应用开发场景;2、防DDoS攻击系统的设计思路;3、SDN防DDoS攻击的应用实现方法;4、服务器灾备系统的设计思路;5、SDN应用实现服务器灾备的方法;6、负载均衡系统的设计思路;7、SDN应用开发实现负载均衡系统的方法。难点:SDN应用系统的设计;SDN应用的实现方法。教学内容及组织安排:第6章SDN基础应用开发6.1SDN应用开发简介SDN的应用场景非常广泛。比较常见的SDN应用开发场景按照功能可划分为3种:基于SDN的流量调度、流量可视化应用开发,基于SDN的网络安全应用开发和基于SDN的上层业务应用开发。下面我们将按照这种划分一一介绍。1.基于SDN的流量调度、流量可视化应用开发流量调度和流量可视化可应用于数据中心内部,也可应用于数据中心之间和广域网。基于SDN的流量调度和流量可视化应用通常包括以下几个模块。①流量采集模块,包括传统网络流量采集和虚拟网络流量采集,通常由控制模块下发采集策略,定期主动收集或主动上报原始流量信息,为数据分析模块提供数据源。②数据分析模块,对各网络节点的流量数据(包括虚拟层和物理层)进行分析汇总,封装成适用于前端展示的数据,供前端展示模块使用。③前端展示模块,获取数据分析模块的输出数据,实时或根据用户操作展示相应的流量可视化界面。④控制模块,将用户输入转化为流表,下发到交换机,以优化和控制网络状态。如果不采用以上模块进行流量监控,可以采用基于sFlow的方法对网络的流量进行监控,还可以采用“基于控制器OpenDaylight+OpenvSwitch+主机”的方法对网络中的流量进行监控,详情参见6.2节。2.基于SDN的网络安全应用开发基于SDN的网络安全应用通过SDN对网络的集中和灵活控制特性,结合传统网络安全技术,完成灵活的安全策略下发和有效的网络状态监控。基于SDN的网络安全应用通常包括以下几个模块。①防火墙模块,提供基于网络和虚拟网络的防火墙和访问控制核心功能。②网络策略分析模块,获取防火墙的策略信息,并转化为流表下发至网络节点。③前端显示模块,提供可视化的用户管理界面,供用户进行网络策略设置和网络安全状况的管理。3.基于SDN的上层应用开发业务相关类开发通常将SDN的特性结合上层应用场景,实现更加灵活的负载均衡、容灾以及业务的弹性伸缩功能等。此类应用通常包括以下几个模块。①上层应用模块,提供各类业务功能。②上层应用管理模块,提供上层应用的生命周期管理和维护,通常和MANO共同集成,用户可配置业务的容灾、负载均衡和弹性伸缩等功能。③策略转化模块,将应用管理模块的配置转化为控制信息,并动态下发到各个网络节点,实现具体的应用。6.2实验一防DDoS攻击SDN应用开发分布式拒绝服务(DistributedDenialofService,DDoS)指借助于客户端/服务器技术,将多个计算机联合起来作为攻击平台,对一个或多个目标发动攻击,从而成倍地提高拒绝服务攻击的威力。通常,攻击者使用一个偷窃的账号将DDoS主控程序安装在一个计算机上。在一个设定的时间,主控程序将与大量代理程序进行通信,代理程序已经被安装在网络上的许多计算机上。代理程序收到指令时就发动攻击。DDoS攻击将造成网络资源浪费、链路带宽堵塞、服务器资源耗尽而使业务中断。6.2.1实验目的防DDoS攻击实验通过获取流量的JSON数据并对JSON数据进行解析,对解析到的数据进行分析判断后即可实施策略。通过事先设定阈值,当监测到的流量超过这个阈值时即判断为DDoS,从而完成模拟DDoS攻击防御。6.2.2实验环境6.2.3实验任务①完成sFlow-RT安装和OpenDaylight配置。②模拟DDoS攻击并利用sFlow验证DDoS攻击的防御功能。6.2.4实验原理6.2.5实验步骤6.3实验二服务器灾备SDN应用开发本节将针对服务器灾备相关的SDN应用开发实验展开介绍,包括服务器灾备实验目的、实验环境、实验任务、实验原理、实验步骤等内容,读者在学完本节内容后会对服务器灾备的SDN应用开发有一定的了解。6.3.1实验目的服务器灾备SDN应用开发实验的实验目的是通过SDN应用开发完成服务器灾备的功能,在实验过程中使读者初步掌握服务器灾备的原理、要点、操作流程,以及SDN技术在其中发挥的作用,使得读者对SDN技术的相关应用有更深刻的了解。6.3.2实验环境6.3.3实验任务①学习灾备技术基础知识并对比各种技术的特点。②使用Postman下发灾备应用初始配置并验证灾备效果。6.3.4实验原理1.灾备原理(1)冷备技术(2)暖备技术(3)热备技术(4)双活技术2.基于SDN的灾备实现6.3.5实验步骤6.4实验三简易负载均衡SDN应用开发负载均衡是一种服务器或网络设备的集群技术。负载均衡常用应用场景主要是服务器负载均衡和链路负载均衡,链路负载均衡按照流量发起方向分为入方向(Inbound)负载均衡和出方向(Outbound)负载均衡。6.4.1实验目的本实验的工作主要是对链路负载的计算,以及最优路径的规划。首先通过迪杰斯特拉算法(Dijkstra'sAlgorithm)计算出最优路径。然后通过特定的API将规划好的路径转换成流表,下发给各个交换机节点,最终达到路径最优规划的效果,实现负载均衡。6.4.2实验环境6.4.3实验任务①使用Mininet创建负载均衡的实验拓扑。②编写负载均衡实验脚本并验证实验效果。6.4.4实验原理6.4.5实验步骤6.5本章小结本章基于SDN应用的功能对SDN应用开发进行了简单的分类,分别为基于SDN的流量调度、流量可视化应用开发,基于SDN的网络安全应用开发和基于SDN的上层应用开发。其中,在基于SDN的流量调度、流量可视化方面,我们重点介绍了负载均衡;在基于SDN的网络安全应用开发方面,重点解说了防DDoS攻击,其原理就是在控制器上执行相应的防DDoS程序,在交换机上安装sFlow代理;在基于SDN的上层应用开发

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论