摘要:围绕网络新技术发展对人才培养的新需求,针对困扰计算机网络课程实验教学的
一系列问题,探讨利用虚拟化技术和软件定义网络框架建设实验教学平台的方法,提出基于
单机模式建立低成本、易扩展的一体化实验平台教改方案,给出参考实验实例,展示该平台
对传统网络实验的兼容性和开展综合性与设计性实验的潜力。 关键词:计算机网络课程;
实验教学;软件定义网络;OpenFlow
一、背景
1.1 近年来,虚拟化技术和云计算兴起,云数据中心、多租户网络等新的应用场景推动
了传统网络设计与管理模式的进步,软件定义网络 (SoftwareDefinedNetworking,SDN)及其
重要技术 OpenFlow 作为创新网络架构,已成为学术界和工业界的关注热点,不少大学建立
了 SDN/OpenFlow 试验网,开展网络领域的创新研究与探索。从 2008 年美国斯坦福大学
NickMcKeown 教授领导的 Ethane 团队(Cleanslate 计划)首次提出 OpenFlow 协议原型[1],到
2012 年 ONF 发布 SDN 白皮书[2]1-12,SDN 及 OpenFlow 完成了从试验平台向业务网络部
署的跨越,SDN/OpenFlow 解决方案已在谷歌等云计算数据中心内部骨干网上发挥了令人瞩
目的作用[3],国内外主流网络厂商推出了多种 SDN/OpenFlow 交换机[4],SDN 和 OpenFlow
技术的发展给网络人才的专业需求注入了新的内容,也给计算机网络课程理论与实验教学的
改革指出了新的研究方向。
1.2 目前网络实验室建设更新周期普遍较短,无论是采用传统网络设备的实验平台,还
是专用的课程教学实验系统,大多面临扩展和更新的要求,实验设备和实验学时不足,实验
内容以验证性实验为主,缺乏设计性实验和综合性实验,实践环节薄弱。针对这些困扰实验
教学的问题,已有不少实验教学改革的努力成果[5-7]。从目前的实验教学改革方案来看,多
数仍依赖普通网络设备或传统网络仿真与协议分析软件,尚不足以完全解决上述问题。
1.3 为了适应网络技术发展对人才培养的新需求,提升学生自主学习能力和实践动手能
力,给计算机网络课程教学提供低成本、易扩展、一体化的实验平台,扩展和深化实验内容,
有必要在网络实验教学改革中引入 SDN 架构和虚拟化技术。围绕 SDN 和 OpenFlow 有很多
开放标准的开源项目,涵盖了多种 SDN 系统构件,包括 OpenFlow 软件交换机、SDN 控制
器、业务流程工具、网络虚拟化工具、仿真和测试工具等,丰富的开源资源为建立新型网络
实验平台提供了实现的可能.
二、SDN 体系的主要组成
2.1SDN 的概念与原理体系架构
传统计算机网络的控制平面和数据转发平面是通过网络设备紧密耦合的,SDN 的思想
是将控制平面与数据转发平面分离,把网络协议的复杂性集中到控制平面,SDN 控制软件
通过开放标准的南向接口(如 OpenFlow 协议)控制数据平面,通过可编程的北向接口(开放的
API)为应用层业务定制所需的网络服务。SDN 架构能够提供网络抽象层面上的集中控制能
力和网络虚拟层面上的资源配置能力,使网络虚拟化与计算虚拟化、存储虚拟化联系一起,
有力支持云计算服务的发展。
2.2SDN 控制器
SDN 控制器(SDN 控制软件)的功能相当于 SDN 的网络操作系统,向下提供对数据转发
设备的配置、控制和管理功能,向上为应用业务提供网络编程接口。SDN 控制器在逻辑上
是集中的,在物理上可以是分布式的。
2.3OpenFlow 交换机
OpenFlow 交换机是 SDN 数据平面的网络设备,它按照流表( owtable)的设置进行转发。
流表由控制器通过安全通道配置,决定OpenFlow 交换机的转发行为。流表项包括跨多个网