APP下载

基于Authorware实现计算机网络协议的仿真

2016-12-20云红艳杨厚俊赵志刚杜祥军

实验室研究与探索 2016年2期
关键词:图标计算机网络原理

云红艳, 杨厚俊, 赵志刚, 杜祥军, 李 琳

(青岛大学 信息工程学院,山东 青岛 266071)



基于Authorware实现计算机网络协议的仿真

云红艳, 杨厚俊, 赵志刚, 杜祥军, 李 琳

(青岛大学 信息工程学院,山东 青岛 266071)

计算机网络原理是计算机专业的核心必修课程,课程中包含许多抽象的网络协议、过程原理和算法。本文研究Authorware的多媒体开发环境和编程功能,设计开发一个简单实用、功能强大、交互性强的计算机网络原理多媒体课件。阐述了用Authorware制作多媒体课件的设计框架、设计思路和方法步骤,并以计算机网络原理的三种信息交换过程、停止等待协议和使用子网划分的分组转发这三个典型协议和过程为例,具体讨论了使用Authorware设计实现中的图标技巧。教学实践证明,通过多媒体课件模拟仿真实现网络协议和过程原理,可以将晦涩难懂的网络协议和过程原理直观化和形象化,增强了学生学习的交互性、自主性和创造性。

多媒体课件; 计算机网络; 协议仿真; 图标

0 引 言

随着计算机科学技术的发展,多媒体教学走进了课堂。Macromedia公司开发的Authorware以其交互性和编程能力强、简单容易等优势成为一款专业的多媒体课件开发软件[1]。尤其是Authorwarer软件交互图标和计算图标的使用,使开发出来的多媒体课件具有很强的交互性和编程能力[2-3]。Authorware以其友好的界面、简单的操作并通过程序的嵌入,可以制作更加复杂形象的多媒体课件,从而使多媒体课件达到专业程序开发软件的水准。

计算机网络原理是计算机学科的一门专业基础必修课,课程内容概念庞杂、协议众多、原理抽象[4]。掌握计算机网络分层参考模型中各层协议、算法的工作原理,是学好计算机网络原理课程的关键[5]。而网络协议并不能直观地观察到,理解起来抽象难懂。

本文使用Authorware的丰富多媒体开发环境和编程功能,开发一个简单实用、功能强大、交互性强的计算机网络原理课程多媒体课件。文中重点描述使用Authorware软件仿真模拟计算机网络中的3种信息交换、数据链路层停止等待协议、带有子网划分的分组转发等典型协议和过程,并讨论其实现技巧。

1 课件的设计实现框架

在多媒体课件的开发中,要充分发挥出Authorware软件的优势与特点,突出其多样化的交互作用。程序中的增强代码编辑窗口为开发者提供了良好的编程接口,通过程序片段的有效嵌入,可以使课件模拟仿真许多原理方法。通过对系统已有自带函数的使用完成一些仅通过图标和交互难以实现的功能。在教学辅助工具的开发中,可利用Authorware与Access数据库之间的接口,实现对教师信息、学生信息、习题库等海量信息的有效快捷管理。

1.1 计算机网络课件系统设计框架与实现

鉴于课程教学和课堂的具体要求,把系统设定为3功能模块,分别是植根于教学任务要求的课程学习模块,供学生用于检测所学知识掌握情况的习题检测模块,供教师辅助教学的课堂助手模块。通过这3模块的相互协调、相互配合,力争使教师和学生均能有所受益,在日常教学中达到事半功倍的效果。各模块在Authorware中的实现流程图如图1所示。

图1 系统模块在Authorware中的实现流程图

Authorware是基于图标和流线式的面向对象的编程软件,在设计开发过程中,根据程序的流程线及程序走向,在流线上拖放所需要的交互图标[6]。多媒体课件主程序的设计实现步骤如下:

(1)拖放群组图标到主流程线上,命名为“主页背景”,将主页上的所有显示控件拖放其中,右击群组图标,将计算图标与其组合,输入如下程序:

Loginsound:=1

Erase All()

Resize Window(Screen Width, Screen Height)

Move Window(0, 0)

information:="今天是:"^Full Date^"北京时间:"^FullTime^DayName

(2) 拖放交互图标到主流程线上,拖放3个显示图标到右侧,组合计算图标,将3个主模块的分支(1、2、3)设置为热对象响应,4个计算图标设置为热区响应,分别实现主页小控件的功能。

(3) 拖放决策图标到主流程线,分支为“计算分支结构”。分支为交互图标中的分支变量。与交互图标配合使用。分支图标的右侧拖放3个群组图标,分别为:“课程学习”“习题检测”“课堂助手”模块。

课程学习模块是本系统的主体模块,根据每个章节的特点,选取典型的协议、过程原理和算法,通过Authorware制作模拟仿真,力求形象生动,使学生易于理解掌握。

习题检测模块设置了每一章节的课后题,题库则通过Access数据库进行保存。题型分为填空题、选择题、简答题。针对每一种题型有不同显示答案的实现方案:选择题通过对点击选项的判定进行正误判断;填空题通过文本输入响应与正确答案相匹配的判断正误;简答题则直接进行答案的显示。

课堂助手模块通过程序化方法,实现课堂所需要的基本工作(课堂点名、教学日历、轻松驿站、资料录入、教学公告等),达到无纸化教学,提高课堂效率。

1.2 课程学习模块协议仿真设计框架结构

课程学习模块中的协议原理方法几乎涉及到计算机网络的每一章节。本文重点讨论设计实现计算机网络中3个典型协议(3种信息交换、停止等待协议、子网交换过程)。设计中使用1个交互图标,作为协议仿真的演示面板;使用3个按钮作为3个协议或过程的入口,每点击1个按钮实现1种协议或过程的演示。

网络协议设计实现步骤如下:

(1)新建文件,命名为网络协议,背景色设置为白色,演示窗口大小设置为根据变量及需要调整窗口大小,勾选“显示标题栏”复选框。

(2)拖放交互图标到主流程线上,设置图标属性,在右侧拖放3个群组图标和一个计算图标,3个群组图标分别是3个协议的入口,计算图标用来退出程序。

(3)打开计算图标代码编辑窗口,输入如下代码,实现程序的退出:

if SystemMessageBox(WindowHandle, "确认要退出吗?", "Confirmation", 36)=6

then Quit()

end if

(4)双击交互图标,手动设置好各个按钮的大小和在演示界面上的位置。

2 3种信息交换的设计实现

2.1 3种信息交换的原理

(1) 电路交换。在数据传输前,2个节点必须建立一条专用的数据通信路径,该路径可能经过许多中间节点。该线路在整个数据传输期间一直被独占,直到通信结束后才被释放。

(2) 报文交换。数据交换的单位是报文,报文携带有目的地址、源地址等信息[7]。发送方把报文交给交换设备时先存储整个报文,然后选择一条合适的空闲输出线路,将报文传送出去。交换节点采用的是存储转发的传输方式,动态分配线路。这就使线路能够共享,提高资源利用率。

(3) 分组交换。分组交换也采用了分组转发方式,把要发送的大数据块划分为合理的小数据块,再加上一些必要的控制信息(如源地址、目的地址等),构成分组发送。网络节点根据控制信息把分组送到下一节点暂存并排队等待传输,再根据分组控制信息选择它的下一个节点,直到到达目的节点。

2.2 3种信息交换的设计思路

设置6台主机,其中1台作为发送端,另外的5个作为接收端。在发送端设置每个主机的发送按钮,点击后用不同的方法发送至每一个主机。本程序中,2号机用来演示电路交换,3号机用来演示报文交换,5号机用来演示分组交换。3种信息交换的程序结构如图2所示。

图2 3种信息交换的程序结构

2.3 3种信息交换的设计实现

电路交换分为建立连接、通信、释放连接3个阶段[8]。在建立连接阶段,为突出线路的占用性,用划红线的方法演示电路连接建立的过程,用到划线函数,还需注意到划线的位置坐标。在通信阶段主要是完成数据的发送,可以用移动图标完成。释放连接主要是演示通信线路的占用解除,可以用画绿线的方式实现。电路交换的结构框架如图3所示。

图3 电路交换的结构框架

报文交换重点是对整个报文的存储转发,选择一条空闲链路,进行存储转发过程。本程序选AC节点的空闲链路,用移动图标移动整个报文,按照固定的坐标位置进行移动。报文交换的结构框架如图4所示。

图4 报文交换的结构框架

分组交换的重点是将报文分割成分组,用显示图标来显示分组分割的效果,之后,每个小分组就独自选择空闲链路进行转发,转发到目的主机后,再将小分组还原成报文。而分组的转发可以用移动图标来实现小分组在主机间的转发。分组交换的结构框架见图5。

图5 分组交换的结构框架

3 停止等待协议的设计实现

停止等待协议是数据链路层协议的基础。对于停止等待协议,帧出错的情况是许多同学理解的难点。此仿真过程是通过交互按钮模拟出错或丢失,观察发送方和接收方各是怎样工作的,协议中各个参数又是怎样变化的。使学生能直观地观察到停止等待协议的工作过程。

3.1 停止等待协议的算法原理

停止并等待协议的算法如下[8-9]:

(1) 发送方 :

①取一个待发送的数据帧,送交发送缓存;

②V(S)←0;

③N(S)←V(S);

④将发送缓存中的数据帧发送出去;

⑤设置超时计时器重传时间tout;

⑥等待;

⑦若收到确认帧ACKn;若n=1-V(S),则取1个新的待发送数据帧,放入发送缓存;V(S)←[1-V(S)];转到③;否则,丢弃这个确认帧,转到⑥;

⑧若超时计时器时间到,则转到④,重传数据帧。

(2) 接收方:

①V(R)←0;

②等待;

③收到1个数据帧并检错;若N(S)=V(R),则执行④;否则,序号有误,表示重复帧,丢弃此数据帧;转到⑥;

④将收到数据帧中的数据部分送交高层;

⑤V(R)←[1-V(R)];

⑥n←V(R);发送确认帧ACKn,转到②。

3.2 停止等待协议的设计思路

先设置好vs,vr,ns等参数,再用Authorware对停止等待协议算法的每一个步骤进行模拟,利用函数进行差错判断,用分支图标和GOTO函数完成对程序流程的控制,用交互图标模拟演示当发送帧和确认帧出错或丢失等特殊状态下停止等待协议的具体工作原理。

3.3 停止等待协议的设计实现

停止等待协议的程序框架如图6所示。设计实现中应注意以下问题:

图6 停止等待协议的程序框架

(1)停止等待协议算法的每一个步骤用一个小的“程序元”实现。

(2)在数据帧的发送实现中,用移动图标移动数据帧图标到指定的位置,包括从主机移交发送缓存、发送端发送数据帧到接收端、接收端移交上层软件等。

(3)当数据帧出错或丢失时,程序应跳转到计时器超时,进而转到重发数据帧。用参数来设置出错或丢失按钮的有效期,以防止数据帧在没有发送的状态下显示出错或丢失。另外,数据帧的出错或丢失按钮的分支结构应设置为返回,否则程序执行到此时,会出现终止情况。

4 使用子网掩码的分组转发过程设计实现

网络层是计算机网络的核心层,数据传输主要依靠网络层中的路由选择和转发。此仿真通过学生手动输入IP地址,利用程序的仿真进行数据流向控制。

4.1 分组转发过程的算法原理

划分子网时路由器转发分组的算法如下[10-11]:

(1)从收到的分组首部提取目的IP地址D;

(2)先判断是否为直接交付。若是,则将分组直接交付,转发任务结束。否则就间接交付,执行(3);

(3)路由表中有目的地址为D的特定主机路由,则将分组传送给路由表中指明的下一跳路由器;否则,执行(4);

(4)对路由表中每一行的子网掩码和D逐比特相“与”,若其结果与该行目的网络地址匹配,则将分组传送给该行指明的下一跳路由器;否则,执行(5);

(5)若路由表中有一个默认路由,则将分组传送给路由表中所指明的默认路由器;否则,执行(6);

(6)报告转发分组出错[12]。

4.2 分组转发过程的设计思路

使用子网掩码的分组转发过程主要用到文本输入响应、字符串的分割与合成、数字相与运算,字符串匹配的实现等技术。在进行路由表的匹配时,要理清匹配成功与匹配失败的程序流程,匹配成功后按既有路径进行发送。若输入字符串不符合IP地址格式要求,则给出提示信息,要求再进行输入;若匹配结果与子网地址不同,则进行默认路由器端口的分组转发。

4.3 子网交换的设计实现

子网交换的程序结构如图7所示。输入主机要发送的分组IP地址时,用系统变量Entrytext保存后,赋值给自定义变量DIP[13]。输入变量DIP与自己的子网掩码相“与”,涉及到字符串DIP的处理时,可以将IP地址中的“.”用Replace函数替换成空格,再用函数getword()取每一个数字后进行相与,以此类推,可以完成整个字符串的相“与”,再与目的IP地址相比较,确定转发路线。数据在转发过程中,用移动图标完成数据在路由之间的发送。

图7 子网交换的程序结构

用户输入H1要发送分组的目的IP地址为128.30.36.62时,其仿真过程如图8所示。

5 结 语

用Authorware实现课件的制作,可以弥补Powerpoint等课件制作软件不能实现动态交互性的不足[14],对于计算机网络原理中复杂的算法、协议和过程原理,可以用嵌入程序的方法设计实现。Authorware提供数据库、VC编译器等专业开发工具的接口,可以开发出功能强大的多媒体课件[15-16]。本文阐述了用Authorware开发计算机网络课件的基本思想和方法,以计算机网络3个典型协议和过程为例,具体阐述了用Authorware开发课件的实现步骤,将编程思想融入其中,实现了协议的仿真。通过多媒体课件的仿真模拟,使学生深刻理解网络协议的工作原理和算法过程,在教学中具有很强的实用性。

[1] 杨迎新,郝凤肖.基于Authorware环境的多媒体课件的设计与实现[J].计算机工程与设计,2004(9):1627-1629.

[2] 王华英.Authorware7.0入门与提高[M].北京:清华大学出版社,2005.

[3] 袁海东. Authorware7.0教程[M].北京:电子工业出版社,2003.

[4] 云红艳,赵志刚,李 琳,等. “计算机网络原理”课程教学改革探讨[J]. 现代计算机(专业版), 2012(32): 39-43.

[5] 云红艳,杨厚俊,赵志刚,等. 创新思维教学在网络工程专业课程群中的研究与应用[J].计算机教育,2013(14):81-85

[6] 张德发. Authorware 7.0基础教程[M].北京:清华大学出版社,2004.

[7] 李 钰.浅谈计算机网络与数据通信交换技术[J].数字技术与应用,2014(1):37-37.

[8] 谢希仁. 计算网络原理(第四版)[M].大连:大连理工大学出版社,2004.

[9] 陈 铭.计算机网络:原理与实践[M].北京:高等教育出版社,2013.

[10] Andrew S Tanenbaum. 计算机网络[M].4版.北京:清华大学出版社,1998.

[11] 王道论坛.2013计算机网络联考复习指导[M].长沙:中南大学出版社,2014.

[12] 唐国良,张 艳,王晓辉.利用Packet模拟路由器的转发分组算法[J].电脑知识与技术,2010(11):8716-8720.

[13] 周锦芳,区诗德,龚榆桐. Authorware7.0 在CAI课件制作中的方法和技巧[J].电脑知识与技术,2008(12):545-548.

[14] 杨群林.Authorware多媒体课件制作课程教学的思考[J].中国现代教育装备,2011(3):130-132.

[15] 李岩松,原婷婷,尹燕宗. Authorware多媒体课件制作经典技巧提炼[J].哈尔滨师范大学自然科学学报,2009,25(1):51-56.

[16] 顾凤梅.基于Authorware的多媒体课件通用框架设计与实现[J].电脑知识与技术,2012(12):8283-8286.

Simulation of Computer Network Protocol Based on Authorware

YUNHong-yan,YANGHou-jun,ZHAOZhi-gang,DUXiang-jun,LILin

(College of Information Engineering, Qingdao University, Qingdao 266071, China)

Principle of computer networks is a core subject in computer specialty. There are many unintelligible protocols, processes and algorithm. By using Authorware, authors develop a computer networks multimedia courseware which is simple, powerful and interactive. This paper describes architecture and methods of designing courseware using Authorware. The courseware focuses on three typical protocols and the implementation of the process principle and implementation method which include three ways of information exchange, stop-waiting protocol and subnet exchange process. Authors summarize and solve the problems arising from the implementation process, especially discuss on using icon tips. Practice has proved that multimedia courseware can simulate network protocols and process principle to visualize protocols and process, and also enhance interactive learning, autonomy and creativity.

multimedia courseware; computer network; protocol simulation; icons

2015-08-14

山东省应用基础型人才培养特色名校建设项目 ( 鲁教高字 [2012]14 号 );2013年度山东省本科精品课程建设(鲁教高字[2014]10号);2011年青岛大学校级精品课程建设项目(青大教字[2012]15号)

云红艳(1971-),女,河北景县人,博士,副教授,硕士生导师,主要研究方向为计算机网络、语义Web与本体工程、智能信息系统。Tel.:13589374369;E-mail:yunhy2001@163.com

TP 393; G 434

A

1006-7167(2016)02-0078-05

猜你喜欢

图标计算机网络原理
了解咳嗽祛痰原理,有效维护健康
平均场正倒向随机控制系统的最大值原理
Android手机上那些好看的第三方图标包
计算机网络环境下混合式教学模式实践与探索
计算机网络信息安全及防护策略
图标
化学反应原理全解读
中国风图标设计
通信原理教学改革探索
计算机网络技术的应用探讨