胡延达 胡曦明 马苗 李鹏
摘要:针对计算机网络实验教学所需的操作平台建设问题,提出了一种基于软路由系统开展仿真实验的解决方案。该方案通过在虚拟机环境下安装软路由系统,按照实验教学需要生成多台独立的虚拟路由设备和终端设备,采用虚拟网卡实现组网连接从而构建网络实验拓扑,可满足多种网络实验的教学需求,为教学信息化改革提供了新的途径。
关键词:软路由;仿真;实验教学;虚拟;拓扑搭建
中图分类号 TP393 文献标识码:A 文章编号:1009-3044(2018)14-0123-04
Abstract: Aiming at the construction of operation platform needed for computer network experimental teaching, a solution based on soft routing system to carry out simulation experiment was put forward. The program installs a soft routing system in a virtual machine environment, generates multiple independent virtual routing devices and terminal devices according to experimental teaching needs, and uses a virtual network card to implement networking to build a network experiment topology, which can meet the needs of a variety of network experiments. The demand has provided a new way for the reform of teaching informationization.
Key words:software router; simulation; experimental teaching; virtual; topological structure
随着计算机仿真技术的不断发展,在高校的课程教学中采用模拟软件开展仿真实验的教学方法由于其具有操作便捷、环境可控、成本低等优点,已成为大学教学信息化改革的热点。目前《计算机网络》《网络工程》《路由与交换》等计算机类课程的仿真实验,多采用行业厂商推出的模拟软件,例如国内的华三公司H3C Cloud Lab平台[1]和华为公司eNSP网络模拟器[2]、国外的思科公司Packet Tracer模拟器[3]。采用行业厂商的模拟软件开展实验教学存在设备型号受限、缺乏真实性和灵活性、仿真功能不可二次开发等缺点,难以满足大学教学信息化改革提出的应用需求。如何构建一种仿真度高、功能开放和实验成本可控的网络仿真实验操作平台成为新一轮实验教学改革的难点。
1 软路由系统
软路由是指路由器的操作系统或路由器软件与电脑主机或服务器相结合形成具有一定路由功能的路由器。由于软路由具有使用成本低、维护操作方便、功能易扩展等优点[4],因此广泛应用于数据通信行业进行路由设备研发,测试以及广泛应用于行业中。
软路由的工作原理是在电脑主机或服务器中,安装专用的软路由系统或软件,通过执行算法实现路由器的功能。常用的软路由操作系统有iKuai、MikroTik、WayOS、海蜘蛛等;常用的路由器软件有BIRD、Quagga、XORP、Zebra等。软路由也被用于搭建企业网[5]和校园网的建设中[6]。有许多软路由是开源的如:Click、
Quagga、VyOS等,可以利用开源的软路由进行二次开发[7],有利于提高软件的实用性,帮助单位和企业打造更具有适用性的个性化软件。
2 基于软路由系统的实验教学设计
软路由是一种简单、高效、功能强大的路由器,利用软路由和虚拟机结合构建网络拓扑,使网络仿真实验环境将不再局限于模擬器环境,网络实验有了更多可扩展的空间。图1的实验将利用软路由和虚拟机的结合,搭建网络环境。
2.1实验流程
2.2实验步骤
1)实验环境搭建
实验采用VMware Workstation为仿真环境,它是一款功能强大的虚拟计算机软件,支持多种操作系统同时运行。搭建实验环境需要将VMware Workstation安装在宿主机中。
2)设备生成
在搭建网络拓扑中,需要生成路由器、交换机和终端设备。要生成路由器和终端设备,需要在VMware Workstation中安装终端设备的操作系统和软路由系统来实现生成路由器和终端设备。要生成交换机,需要在VMware Workstation中开启合适的网络适配器作为网络拓扑的交换机。
3)设备互连组网
设备之间通过VMnet进行互联,VMnet在网络拓扑搭建中充当着交换机和路由器与终端设备的网卡的角色。将需要连接的两台设备,连接在同一个VMnet上,通过对路由器进行地址和路由设置,就可以轻松地将两台设备连接起来。
4)实验数据分析
在组网后,利用Ping命令等方式测试网络拓扑的连通性,通过抓包等方式获取实验拓扑中的报文,对获取的数据进行分析与归纳。
5)实验总结
实验后,对所得的实验数据与结果进行分析与总结。利用结果对自己的研究进行验证和分析,进而得出所需的结论。
3 实验教学案例
软路由提供了非常丰富的功能,在数据链路层中,它可以实现提供划分VLAN、搭建PPPOE服务器[8]等功能;在网络层中,软路由支持静态、OSPF、IPv6[9]等协议的运行以及实现DHCP服务器[10]搭建等功能。
选取目前使用频率高、可应用功能齐全的、方便操作、应用程度好的三款软路由:iKuai、Ubuntu、MikroTik进行比较,对三款的性能对比如表1所示:
本次实验以静态路由协议网络拓扑搭建为例,利用软路由进行仿真教学环境的搭建,将iKuai、Ubuntu、MikroTik三种软路由通过静态路由协议进行相互的連接(如图2)。
3.1实验拓扑
在一台计算机中,以VMware Workstation虚拟机环境作为总的实验环境,通过虚拟机分别生成主机A、路由器一、路由器二、路由器三、主机B,将生成的设备通过VMnet进行互连,得到网络拓扑(如图2所示)。
3.2设备生成与配置
为了尽可能丰富本次实验,让实验更具有普遍性,因此采用了三款软路由进行实验,以此来展示软路由系统在计算机网络中可利用的范围和可支持的丰富的实验功能。
对于图2中的路由器一,采用iKuai软路由系统进行生成,iKuai软路由系统操作基于图形化操作界面,具有操作简单、易于配置等优点,在操作中可以为它添加IP地址、生成静态路由。
对于图(图2)中的路由器二,采用Ubuntu系统进行生成,通过Ubuntu系统提供的数据转发功能实现路由功能。Ubuntu操作系统作为路由器具有功能易于扩展、支持二次开发等特点。在Ubuntu操作系统中,通过图形化操作界面给网卡添加相应的IP地址、掩码、网关;在开启Ubuntu的数据转发功能时,使用ip_forward来开启;在生成静态路由时,通过配置IPAdress、Mask、GateWay参数生成静态路由。
对于图2中的路由器三,采用MikroTik软路由系统进行生成,MikroTik软路由系统具有操作方式多样、功能强大、稳定性好等特点。在添加IP地址时,通过配置IPAddress/mask-length和Interface实现IP地址的添加。在生成静态路由时,通过配置IPAddress/mask-length和Gateway参数生成静态路由。
3.3实验数据分析
1)连通性测试
对于连通性测试,可以采用Ping命令。在主机A上运行ping命令,ping主机B的IP地址,主机A收到主机B的回复报文,由此说明网络的连通性良好。
2)协议分析
上面的连通性测试是基于ICMP报文的,在真实的网络环境中,可以通过在终端设备抓包进行测试。在基于软路由系统搭建的计算机网络实验环境中,同样可以进行抓包。
在VMwareWorkstation中,设备之间通过VMnet互联,需要在基于软路由系统搭建的计算机网络实验环境中抓取报文,要在宿主机中运行Wireshark对VMnet进行抓包,从而获取报文。图4、图5为在VMnet中捕获的报文。
图4、图5表明,在基于软路由系统搭建的计算机网络实验环境中可以成功捕获到报文。
3.4性能比较
表5 对模拟器实验环境和基于软路由的实验环境进行对比。
1)支持二次开发
部分软路由提供二次开发的功能,可以在软路由上通过代码修改等方式进行二次开发。对路由器进行二次开发,提高了软件的实用性,增加了软件的个性化,方便不同的企业和单位根据实际情况对软路由进行使用。
2)配置复杂度低
在对软路由进行配置时,不需要像模拟器一样,必须通过命令行进行管理,大多数软路由提供图形化操作页面,只需要在图形化操作页面进行操作就可以轻松地实现所需的功能。
3)逼真性高
在进行虚拟网络实验中,模拟器的主机通常只具有ping功能,但在软路由的虚拟主机中,主机均采用电脑常用的操作系统,使得实验环境仿真程度更高。
4)操作灵活
在搭建网络环境时,不再局限于模拟器提供的固定功能的路由器与主机,可以根据网络环境的特点,选择适合网络环境的软路由进行实验,虚拟主机也可以根据自身的需要,选择合适的操作系统,这样搭建出的网络环境灵活性更大。
5)扩展性强
部分软路由具有良好的扩展性,可在软路由上添加相应的组件,就可以轻松地实现功能的拓展,使路由器的功能更加强大。
4 总结
长期以来,计算机网络实验教学所采用的教学方法,主要有两种,分别是采用真实设备的网络操作环境以及华三公司、华为公司、思科公司等厂商推出的H3C Cloud Lab平台、eNSP网络模拟器、Packet Tracer模拟器进行模拟器的仿真实验。但是对于采用真实设备的实验,受限于场地、经费的要求,无法满足大规模学生上课的要求。采用模拟器实验时,由于受到厂商的设备类型和设备种类的限制以及许多模拟软件需要付费等原因,无法进行很好的软件仿真。
本文将常用于设备通信厂商进行设备开发、测试所广泛采用的软路由系统引入到计算机网络实验教学中来,提出了一种基于软路由系统的计算机网络实验教学设计,并详细阐述了教学设计的实验流程和实验步骤。然后又以静态路由实验为教学案例,详细地描述了采用iKuai软路由系统、Ubuntu系统、MikroTik软路由系统通过配置IP地址和生成静态路由进行组网互联的过程、对搭建好的网络拓扑进行连通性测试和抓包分析。最后,通过对模拟器的实验环境和基于软路由的实验环境进行对比得出基于软路由实验环境的优点。
参考文献:
[1]耿玥,胡曦明.基于局域网内Windows下的TCP PMTUD仿真实验[J].电脑知识与技术,2017,13(16):44-45+50.
[2]廖浩霖.利用eNSP构建虚拟的网络技术实验室[J].电脑知识与技术,2014,10(32):7772-7774.
[3]陈若楠,胡曦明,马苗.基于IPSec下的VPN组播问题的探究[J].网络安全技术与应用,2017(7):42-44+48.
[4]刘涛,李佩铎.浅谈软路由和硬路由[J].电脑知识与技术,2010,6(2):298+320.
[5]何小平.软路由组建企业网[J].电脑知识与技术,2014,10(31):7263-7267+7270.
[6]张家松.校园无线网络的建设和管理[J].电脑知识与技术,2015,11(24):16-17+19.
[7]姚苏,张宏科,周华春.RIP和OSPF路由协议在Click软件路由器中的实现[J].计算机技术与发展,2010,20(12):17-20.
[8]饶淑珍,周海.一种基于PPPOE的ARP病毒解决方案[J].电脑知识与技术,2012,8(20):4850-4851.
[9]李随意,姚龙海.Linux平台下对支持IPv4/IPv6软件路由器的实现[J].舰船电子工程,2006(2):94-97.
[10]孙道平,张宏科,周华春.DHCP服务器在Click模块化软件路由器中的实现[J].计算机应用与软件,2011,28(5):17-19+24.