技术领域
本发明涉及智能教学技术领域,具体来说,涉及一种基于容器的软件定义网络实验教学系统及教学方法。
背景技术
软件定义网络是一种新型的网络体系结构和网络互联方法,此方法使用基于软件的控制器或应用程序编程接口与底层的通用硬件进行通信,可以实现网络基础架构的灵活自定义。基于软件定义的网络在体系结构上分为应用程序层、控制层和数据层。应用程序层包括典型的网络应用程序,例如入侵检测、负载均衡、防火墙。控制层面基于控制器软件,采用开放式流表协议向下层设备下发流表,以决定数据的流转方向,控制层面与应用层面之间的通信连接称为北向接口。软件定义的网络在数据转发上使用通用交换机设备,这些设备支持开放式流表协议OpenFlow,可接受来自控制器的控制指令,控制层面与数据层面间的连接称为南向接口。
容器技术是一种软件打包和分发方式,其将软件及其所需的运行环境打包为一个镜像文件进行分发,使用者运行此镜像文件即创建出运行时容器,快速搭建软件运行环境,使用容器技术使得软件分发和部署更加灵活。容器作为轻量级虚拟化技术,其直接运行于宿主机操作系统之上,每个容器在运行时在操作系统中体现为一个进程,实现了容器间的存储空间安全隔离,同时容器在运行性能较传统虚拟机更优。
传统软件定义网络实验基于虚拟机实现,具体为在单机上安装VMWare等虚拟化软件,并在其上创建虚拟机,在虚拟机内部安装软件定义网络相关控制器、虚拟交换机软件,安装面向应用程序层支撑程序运行的软件环境。基于单机虚拟机开展软件定义网络实验,其特点是在教学时需要每次课先打开并运行虚拟机环境,实验完成后所产生的实验文件需要学生手动提交给教师。基于单机虚拟开展软件定义网络实验,其特点还包括:对实验设备配置性能要求高、实验地点和时间单一、学生无法连续开展实验,教师无法集中监控学生实验进度和查看学生实验文件等弊端。
针对相关技术中的问题,目前尚未提出有效的解决方案。
发明内容
针对相关技术中的问题,本发明提出一种基于容器的软件定义网络实验教学系统及教学方法,用以解决传统基于单机虚拟软件开展软件定义网络效率低、实验场地固定、实验时间单一、实验设备有限等缺陷,为学生和教师创建了强交互式智能实验环境。
本发明的技术方案是这样实现的:
本发明一方面,提供了一种基于容器的软件定义网络实验教学系统,包括:学生用户端、教师用户端、实验系统服务端、容器云服务端和数据库,所述学生用户端和所述教师用户端分别与所述实验系统服务端连接,所述容器云服务端和所述数据库分别与所述实验系统服务端连接,其中;
所述学生用户端,用于访问所述实验系统服务端查看课程信息及实验列表和查看实验详情与实验设备拓扑与列表,通过浏览器远程访问实验容器,基于浏览器在远程容器上在线开展软件定义网络实验;
所述教师用户端,用于访问所述实验系统服务端进行课程实验管理,具体包括创建、删除、编辑实验内容和实验设备模板,查看学生实验数据;
所述实验系统服务端,用于运行实验系统,面向学生和教师提供交互式界面,界面以网页方式呈现,其中,实验系统程序面向学生提供登录、课程及实验查看和在线开展实验功能;实验系统程序面向教师提供登录、课程实验管理、监控学生实验进度和实验数据功能;
所述容器云服务端,用于向所述实验系统服务端提供基础镜像存储,为容器运行服务提供支持,并负责管理所有容器;
所述数据库,用于存储所述实验系统服务端中数据信息,包括学生教师账号信息、课程信息和实验数据信息。
进一步的,所述实验系统服务端包括前台网站模块、数据管理模块、认证鉴权模块和容器管理模块,所述数据管理模块和所述认证鉴权模块与所述前台网站模块连接,所述数据管理模块和所述容器管理模块与所述认证鉴权模块连接,所述容器管理模块与所述容器云服务端连接,其中;
所述前台网站模块,用于提供面向学生和教师交互的网页界面,实现接收学生和教师提交的数据并反馈结果、实现在网页中远程访问实验设备、实现教师通过网页对学生实验进行监控和对学生实验文件进行查看;
所述数据管理模块,用于连接所述数据库,实现对学生及教师账号管理、课程管理、课程实验列表管理和实验管理;
所述认证鉴权模块,用于进行系统账号认证鉴权和容器鉴权;
所述容器管理模块,用于进行完成镜像及容器的管理。
进一步的,所述容器云服务端包括:镜像仓库模块、镜像管理模块、容器管理模块和文件管理服务,其中;
所述镜像仓库模块和所述镜像管理模块,分别用于向所述实验系统服务端提供基础镜像存储,为容器运行服务提供支撑;
所述容器管理模块,用于为容器提供运行环境,负责管理所有容器;
所述文件管理服务,用于管理所有容器挂载的文件目录。
本发明另一方面,提供了一种基于容器的软件定义网络实验教学方法,包括面向学生用户,包括以下步骤:
学生用户登录实验系统,经系统认证鉴权过后转到课程列表页面;
学生用户进入具体课程页面,查看此课程下的实验列表;
学生进入到实验详情页面,在实验详情页面中查看实验步骤、实验拓扑和设备列表;
学生通过浏览器进入到远程容器设备,开展软件定义网络实验;
学生通过浏览器访问远程实验容器设备,查看实验数据,对实验结果进行验证;
学生通过浏览器查看所有实验设备,在实验操作完成后,提交实验数据。
其中,还包括面向教师用户,包括如下步骤:
教师用户登录实验系统,经系统认证鉴权后浏览器跳转到教师主页;
教师用户查看其管理课程下实验列表,查看某实验的总体完成进度;
教师用户查看具体实验内容,查看参与学生实验的实验进度和实验数据文件;
教师用户对学生实验数据进行在线审查,并可填写点评信息。
教师用户在线创建新实验,并填写实验步骤、实验内容和指定实验容器设备,实验创建完成后,学生用户即可在线查看到并开展实验。
其中,所述实验容器设备,包括:使用的镜像名称、内存大小、网络配置和挂载文件目录。
本发明的有益效果:
本发明基于容器的软件定义网络实验教学系统及教学方法,通过集成学生用户端、教师用户端和实验系统服务端以及容器云服务端和数据库,其实验系统服务端采用轻量化容器方式提供环境仿真,其能够提供较传统虚拟机仿真更高性能、支撑更多用户在线,其基于令牌鉴权思路,实现了将内网容器资源以较安全方式提供给外网用户访问,学生用户端通过浏览器在线访问远程实验容器,管理及查看实验数据;在线实验系统打破了传统单机虚拟机时间和空间限制,学生用户端无需安装软件,使得分散在各地的学生用户通过浏览器即可在线开展实验,使用学校实验室计算和存储资源,为远程实验提供了高效平台,较大程度提高了实验资源利用率,为学生用户进行提供了与实验资源的交互环境与方式。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是根据本发明实施例的一种基于容器的软件定义网络实验教学系统及教学方法的原理示意图;
图2是根据本发明实施例的一种基于容器的软件定义网络实验教学系统的实验系统服务端原理示意图;
图3是根据本发明实施例的一种基于容器的软件定义网络实验教学系统的工作流程时序图;
图4是根据本发明实施例的一种基于容器的软件定义网络实验教学系统及教学方法的容器云服务端示意图;
图5是根据本发明实施例的一种基于容器的软件定义网络实验教学系统及教学方法的流程示意图一;
图6是根据本发明实施例的一种基于容器的软件定义网络实验教学系统及教学方法的流程示意图二。
图中:
1、学生用户端;2、教师用户端;3、实验系统服务端;4、容器云服务端;5、数据库。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员所获得的所有其他实施例,都属于本发明保护的范围。
根据本发明的实施例,提供了一种基于容器的软件定义网络实验教学系统。
如图1所示,根据本发明实施例的基于容器的软件定义网络实验教学系统,包括:学生用户端1、教师用户端2、实验系统服务端3、容器云服务端4和数据库5,所述学生用户端1和所述教师用户端2分别与所述实验系统服务端3连接,所述容器云服务端4和所述数据库5分别与所述实验系统服务端3连接,其中;
所述学生用户端1,用于访问所述实验系统服务端3查看课程信息及实验列表和查看实验详情与实验设备拓扑与列表,通过浏览器远程访问实验容器,基于浏览器在远程容器上在线开展软件定义网络实验;
所述教师用户端2,用于访问所述实验系统服务端3进行课程实验管理,具体包括创建、删除、编辑实验内容和实验设备模板,查看学生实验数据;
所述实验系统服务端3,用于运行实验系统,面向学生和教师提供交互式界面,界面以网页方式呈现,其中,实验系统程序面向学生提供登录、课程及实验查看和在线开展实验功能;实验系统程序面向教师提供登录、课程实验管理、监控学生实验进度和实验数据功能;
所述容器云服务端4,用于向所述实验系统服务端3提供基础镜像存储,为容器运行服务提供支持,并负责管理所有容器;
所述数据库5,用于存储所述实验系统服务端3中数据信息,包括学生教师账号信息、课程信息和实验数据信息。
其中,如图2所示,所述实验系统服务端3包括前台网站模块6、数据管理模块7、认证鉴权模块8和容器管理模块9,所述数据管理模块7和所述认证鉴权模块8与所述前台网站模块6连接,所述数据管理模块7和所述容器管理模块9与所述认证鉴权模块8连接,所述容器管理模块9与所述容器云服务端4连接,其中;
所述前台网站模块6,用于提供面向学生和教师交互的网页界面,实现接收学生和教师提交的数据并反馈结果、实现在网页中远程访问实验设备、实现教师通过网页对学生实验进行监控和对学生实验文件进行查看;
所述数据管理模块7,用于连接所述数据库5,实现对学生及教师账号管理、课程管理、课程实验列表管理和实验管理;
所述认证鉴权模块8,用于进行系统账号认证鉴权和容器鉴权;
所述容器管理模块9,用于进行完成镜像及容器的管理。
另外,如图4所示,所述容器云服务端4包括:镜像仓库模块10、镜像管理模块11、容器管理模块12和文件管理服务13,其中;
所述镜像仓库模块10和所述镜像管理模块11,分别用于向所述实验系统服务端3提供基础镜像存储,为容器运行服务提供支撑;
所述容器管理模块12,用于为容器提供运行环境,负责管理所有容器;
所述文件管理服务13,用于管理所有容器挂载的文件目录。
另外,如图3所示,其账号认证及鉴权是指学生和教师账号登录系统时验证账号是否有效,当认证通过后通过向其分配令牌用于后续操作中鉴别身份。认证与鉴权能够实现屏蔽非法账号访问、访问身份伪造等非法请求。容器鉴权是指在向学生用户分配容器时同时发放容器令牌,此令牌是通过浏览器网页访问容器时的通行证,能够屏蔽对容器的非法访问请求。以上两种令牌都存在时间有效期,令牌有效性核验也由认证鉴权模块负责执行。
借助于上述方案,其实验系统服务端3基于容器方式将开展软件定义网络实验使用的各类设备环境封装为镜像,具体包括控制器软件OpenDayLight、Ryu,Mininet小型系统,虚拟交换机OpenVSwitch等,上述镜像文件存储在容器云服务端4中;在进行实验时,系统根据实验模板文件中指定镜像创建容器,学生通过浏览器远程访问容器进行实验,实验关联的文件都存储于容器云服务端4中;其实验系统服务端3采用轻量化容器方式提供环境仿真,其能够提供较传统虚拟机仿真更高性能、支撑更多用户在线,其基于令牌鉴权思路,实现了将内网容器资源以较安全方式提供给外网用户访问,学生用户端1通过浏览器在线访问远程实验容器,管理及查看实验数据;在线实验系统打破了传统单机虚拟机时间和空间限制,学生用户端1无需安装软件,使得分散在各地的学生用户通过浏览器即可在线开展实验,使用学校实验室计算和存储资源,为远程实验提供了高效平台,较大程度提高了实验资源利用率,为学生用户进行提供了与实验资源的交互环境与方式。
另外,具体的,上述基于容器实现的软件定义网络在线实验系统中,学生用户端1具有兼容性,硬件支持个人计算机、平板电脑以及手机,软件支持android系统及ios系统。
在具体实施时,上述软件定义网络在线实验系统中,每个学生用户端1,具体用于通过浏览器访问实验系统,经系统认证后向其发放通行证令牌,学生用户端获取并存储此令牌;学生用户在申请开展实验时,向系统发送此令牌以获取容器资源令牌,基于容器令牌再获取容器在线访问地址;学生用户使用容器访问地址即可在浏览器中访问远程容器。
根据本发明的另一个实施例,提供了一种基于容器的软件定义网络实验教学方法。
如图5所示,根据本发明实施例的基于容器的软件定义网络实验教学方法,包括面向学生用户,包括以下步骤:
学生用户登录实验系统,经系统认证鉴权过后转到课程列表页面;
学生用户进入具体课程页面,查看此课程下的实验列表;
学生进入到实验详情页面,在实验详情页面中查看实验步骤、实验拓扑和设备列表;
学生通过浏览器进入到远程容器设备,开展软件定义网络实验;
学生通过浏览器访问远程实验容器设备,查看实验数据,对实验结果进行验证;
学生通过浏览器查看所有实验设备,在实验操作完成后,提交实验数据。
另外,如图6所示,还包括面向教师用户,包括如下步骤:
教师用户登录实验系统,经系统认证鉴权后浏览器跳转到教师主页;
教师用户查看其管理课程下实验列表,查看某实验的总体完成进度;
教师用户查看具体实验内容,查看参与学生实验的实验进度和实验数据文件;
教师用户对学生实验数据进行在线审查,并可填写点评信息。
教师用户在线创建新实验,并填写实验步骤、实验内容和指定实验容器设备,实验创建完成后,学生用户即可在线查看到并开展实验。
其中,所述实验容器设备,包括:使用的镜像名称、内存大小、网络配置和挂载文件目录。
综上所述,借助于本发明的上述技术方案,通过集成学生用户端1、教师用户端2和实验系统服务端3以及容器云服务端4和数据库5,其实验系统服务端3采用轻量化容器方式提供环境仿真,其能够提供较传统虚拟机仿真更高性能、支撑更多用户在线,其基于令牌鉴权思路,实现了将内网容器资源以较安全方式提供给外网用户访问,学生用户端1通过浏览器在线访问远程实验容器,管理及查看实验数据;在线实验系统打破了传统单机虚拟机时间和空间限制,学生用户端1无需安装软件,使得分散在各地的学生用户通过浏览器即可在线开展实验,使用学校实验室计算和存储资源,为远程实验提供了高效平台,较大程度提高了实验资源利用率,为学生用户进行提供了与实验资源的交互环境与方式。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
机译: 一种基于信息处理的封闭式教学方法
机译: 一种基于图像记忆原理的互联网视频教学方法
机译: 一种基于汉字的外语阅读教学方法及装置