“网络安全”课程中的实践教学研究与探索.doc
《“网络安全”课程中的实践教学研究与探索.doc》由会员分享,可在线阅读,更多相关《“网络安全”课程中的实践教学研究与探索.doc(25页珍藏版)》请在咨信网上搜索。
“网络安全”课程中的实践教学研究与探索 摘要:本文通过防火墙综合实验的设计与开发,对在“网络安全”课程教学中如何将理论教学的知识点有机地融入实践教学,通过实践教学培养学生的综合运用能力、独立解决问题能力、团结协作能力和工程实践能力等问题做了较深入的研究和有益的探索。<br> 关键词<br>本文来自:计算机毕业网 :网络安全;实践教学;综合性设计性实验<br> <br> 1 引言<br> <br> “网络安全”是信息安全本科教学的主要专业课程之一,教学内容主要包括:数据加密、计算机病毒与防治、黑客入侵技术、网络协议安全、防火墙技术、入侵检测技术和入侵者跟踪技术等。是一门综合性很强的课程,与网络工程技术也有密不可分的联系。为了更好地突出实践教学在该课程教学中的作用,该课程将学时数设为:理论教学32学时,实践教学24学时。课时比例为4∶3。从课时分配上充分肯定了实践教学在教学中的重要性。为此,如何开展实践教学?如何更好地将理论教学的知识点有机地融入到具体的实验中去?使学生不仅能够通过实验理解和掌握理论教学的内容,还能通过实验了解和掌握一定的工程技术知识,培养和锻炼学生的分析能力、综合解决问题的能力和实际动手能力,就成为我们在实践教学研究中的主要问题。本文仅以防火墙综合实验的设计与开发为例,阐述教学组在实践教学过程中所做的具体研究和探索。<br> <br> 2 确定实践教学的理论知识点<br> <br> 作为重要的网络安全技术之一,理论教学中的防火墙技术主要涵盖以下知识点:数据包过滤技术、代理技术、 状态检测技术、地址转换技术、内容检测技术和VPN技术等。教学组根据实验室提供的硬件防火墙设备和相应实验环境,首先确定了综合实验中应该包含的知识点为:地址转换技术、数据包过滤技术、状态检测技术、内容检测技术和入侵者跟踪。这些知识点从不同协议层次和不同安全角度较典型地反应了防火墙技术的应用特点。对这些知识点的理解和掌握可以通过硬件防火墙的地址转换功能、包过滤功能、状态检测功能、黑名单设置功能、反地址扫描功能和日志输出功能加以实现。<br> <br> 3 设计模拟的用户需求<br> <br> 为了更好地将以上的知识点融入到具体实验中,使学生学会通过分析判断来提炼问题,根据具体问题自行设计安全方案,我们在综合实验中设计了一个模拟的安全需求,具体如下:<br> 某公司因业务需要欲组建一个网络,组网的安全要求为:<br> ● 公司内部网络采用私有IP地址,并与外网隔离;<br> ● 公司内部只有指定计算机可以访问外网,每次访问要有详细的日志信息;内部网络能够防范来自Internet的恶意攻击,如地址扫描和病毒等;<br> ● 公司对外提供WWW、FTP服务,但外部网络只有特定用户可以访问内部服务器。<br> 这一用户需求巧妙地将实践教学的知识点隐藏了起来,给学生提供了一个综合分析问题的空间。学生只有通过认真的需求分析,反刍所学的理论知识,才能正确地确定采用何种防御技术组网。从而培养和锻炼了学生的分析能力。<br> <br> 4 引入网络工程知识<br> <br> 防火墙既是网络安全的主要防御工具,也是网络工程的重要组成部分。一个完整的防火墙体系不仅与防火墙的安全策略有关,还与组成网络的计算机、服务器、路由器、交换机等硬件设备的连接配置和操作系统等软件的使用密不可分。为了培养学生的实际动手能力和工程实践能力,让学生通过实践教学了解实际组网工程的相关流程,我们将网络工程中的系统集成、网络规划与设计等相关知识引入实验,在教学内容中明确要求学生在实验室提供的软硬件设备基础上进行网络规划,提出组网方案,完成需求分析、软硬件设备选择、网络系统选择、拓扑结构设计、组网地址信息规划等工程内容。并按自己设计的组网方案完成网络组建。<br> 作为网络安全系统规划设计的第一步,需求分析中我们强调了以用户的安全需求为基础进行分析,目的是使学生更好地运用所学的安全防御知识来组网。这比一般的网络规划设计更进了一步。每个学生都可以根据工程的实际安全需求提出自己认为最好的方案,而在实验步骤中,我们仅仅给出了几个参考步骤,更多、更细的步骤则作为实验报告的内容让学生在反复摸索中完成并提交。<br> 网络安全规划除了对一般组网的软硬件设备进行选择外,还包括对安全产品的选择。安全系统的规划则要求学生在安全需求分析的基础上进行网络拓扑结构设计、组网地址信息规划以及网络操作系统的选择。方案的实施包括硬件组网、各种操作系统的安装配置;路由器和交换机的配置,以及硬件防火墙的配置等。其中硬件防火墙的配置体现了安全防御方案的主要内容。如:地址转换、报文过滤、攻击防范和入侵者跟踪技术等。结果的检验要求学生在组建好的网络环境中进行。这一环节可以帮助学生发现问题,检验实验完成情况。<br> 显然,要完成这些实验内容,学生必须了解相应的网络工程知识、操作系统知识;了解路由器、交换机和防火墙等硬件设备的功能特性等,从而达到培养和锻炼学生综合运用知识能力、动手能力和一定的工程实践能力的目的。<br> <br> 5 改革实验方法<br> <br> 5.1 指导而不引导<br> 为了更好地培养和锻炼学生的独立工作能力和创造性思维能力,在实践教学中,我们没有给出学生具体的实验方法步骤,也不要求学生按某个固定方法步骤进行实验。而是根据实验目的给学生提供了一个简略的参考步骤,供学生参考,大致内容如下:<br> 1)需求分析。从基本的安全防护需求、内网对外网的访问控制需求、每个安全区域内的安全防御需求、攻击防范需求等方面考虑。<br> 2)网络规划。从组网的软硬件设备、使用的网络系统、网络的总体结构等方面考虑。<br> 3)网络系统设计。从规划网络拓扑结构、规划组网地址信息、选择网络操作系统等方面考虑。<br> 4)方案实施。具体组网并配置相应硬件设备。<br> 5)结果检测。按用户的安全需求在组建好的网络上进行验证。<br> 这个参考步骤给毫无工程实践经验的学生提供了一个框架性的实验指导,但每一步的具体内容还要学生自己充实完成。这样就为学生充分发挥主观能动性留下了较大的空间。<br> <br> 5.2 分组开设实验<br> 由于综合实验包含了较多的实验内容和较大的工作量,我们将实验设计为分组进行,每组4~6人,要求学生自报或推选产生一名组长,有组织、有计划地完成这个综合性实验。组织和计划的内容包括:确定实验完成的计划进度表;明确每位组员要完成的工作;定期组织组员讨论实验中遇到的问题并共同确定解决方案;及时与指导教师联系取得教师的指导等。这种实验方式摆脱了学生在实验过程中的孤立性和被动性,使学生可以通过相互交流讨论开拓视野,提高动手动脑的兴趣。同时也锻炼了学生的组织能力、交流能力和协作能力。<br> <br> 5.3 列出参考资料,开拓学生视野<br> 由于综合实验涉及了较多的安全和工程知识点,同时由于不同的硬件生产厂家生产的硬件在结构和配置命令方面都不相同,组网方法也各有千秋,学生会在初涉实验时感到无从下手。为此,我们除在实验指导书中说明了实验预备知识外,还列出了相关参考资料,让学生通过资料的查询收集完成相关的实验内容,从而培养学生的学习能力和资料检索运用能力,开拓学生的视野。<br> <br> 6 实验实施情况<br> <br> 本实验已作为2004级“信息安全”专业本科课程设计题目进入教学环节,学生以团队组合的方式参加,根据实验要求完成实验报告。目前实施情况良好。例如,某学生团队在课题完成后给出了课程设计报告,较好地反映了学生们的思维过程和解决问题的思路,如表1和图1所示。<br> <br> 表1 安全需求分析及解决方案<br> <br> <br> 图1 规划的网络拓扑结构<br> <br> 报告的最后还提交了测试记录说明和详细配置命令。<br> 从学生提交的实验报告可以看出,学生通过实验已基本掌握了如何运用安全理论知识设计一个具体的安全防御方案,基本掌握了面向实际工程的网络规划、设计和实现方法,达到了实践教学的目的。<br> <br> 7 结束语<br> <br> 实践教学是理论教学的完善和补充。教学效果良好的实践教学应能充分融合理论教学的重要知识点,打破理论教学的课程界限,更好地体现学科的综合性,更多地面向工程实际,使教师通过实践教学能够真正培养学生的独立思考能力、综合运用能力、实际动手能力、发明创造能力和团队协作能力。我们的教学研究充分证明了这一点。<br> <br> 参考文献:<br>本文出自: 计算机毕业网<br> [1]卿斯汉,蒋建春.网络功防技术原理与实践[M].北京:科学出版社,2004.<br> [2]邓亚平.计算机网络安全[M].北京:人民邮电出版社,2004.<br> <br> </p> <p> </p> <p> </p> 摘 要:本文介绍了我院在对国际主流网络模拟软件进行分析和优选的基础上,基于NS2网络模拟软件,从功能完整性、操作便捷性出发,设计实现了一个包含网络协议工作原理动态演示、网络建模及设计方案性能测试等功能的网络实验教学综合性模拟平台。经教学试用,效果良好。<br> 关键词:网络实验;网络模拟;网络教学;网络协议;NS2<br> <br> 1 引言 <br> <br> 目前网络原理和网络设计等课程及其实验课已经成为计算机专业和通信、自动化、光电等专业的必修基础课程。由于这些课的基本概念、技术涉及到大量抽象的理论知识和网络协议,许多初学者感到抽象难懂。同时,受有限的资金和网络条件的限制,在实验室构建大规模的实验平台比较昂贵,即便在实验平台方面有投入也有很大的局限性。例如,重新配置或共享资源很难、运用不灵活、规模很难做到很大、不能实现真实网络中的多种通信流量和拓扑的融合、受控条件下的重复实验会很困难等。更何况,大多数高校对动辄几十万、上百万的网络实验室经费负担不起。<br> 计算机网络的实验方法,包括基于现实网络环境的和网络模拟的两种。文献[1]中提出了一种基于现实网络的实验平台设计方案,其中包括设计出研究所需要的合理硬件和软件配置环境,建立测试床和实验室,在现实网络上实现对网络协议、行为及性能的研究。这种方法的局限性在于成本较高,重新配置或共享资源较难,运用不灵活,实验床的规模很难做到很大,不能实现网络中多种通信流量和拓扑的融合。利用网络模拟软件所进行的网络实验在很大程度上可以弥补上述方法的不足。网络模拟方法可以根据需要建立相应的网络模型,用相对很少的时间和费用获取网络在不同条件下的各种特性,得到网络的丰富有效的数据。网络模拟无疑提供了一种方便、高效的验证与分析的方法。目前国内有一些高校对网络实验模拟软件在教学中的应用进行了研究,这些研究主要集中于如何使用NS2(Network Simulator)网络模拟软件,并没有考虑网络模拟软件存在的平台界面友好性差、网络建模复杂而繁琐以及功能单一等问题。<br> 笔者优选网络模拟软件,从功能完善性、操作方便性以及界面友好性出发设计并实现了一个综合性的网络实验模拟平台。<br> <br> 2 开发工具的优选<br> <br> 2.1 网络模拟工具的优选<br> 在商业和研究领域,目前能够找到的、可利用的网络模拟工具主要有以下几种:GlomoSim,JavaSim,NS2,SSFNet以及OPNET(Optimized Network Engineering Tool)。这些模拟工具主要是用作网络的建模、模拟、数据采集以及分析不同版本的网络产品、协议和系统架构。在以上所列的几种工具中,商业应用的OPNET和研究使用的开源软件NS2使用最为广泛。<br> NS2由于其开源性使其在研究领域受到广泛关注,而OPNET则由于其强大的功能在商业领域获得了成功,都不失为优秀的网络模拟工具。表1是NS2与OPNET优缺点的简单比较。<br> <br> 如表1所示,NS2在获取渠道、可扩展性以及模拟演示等方面均优于OPNET,而这些方面正是在教育科研环境中对网络模拟工具所要强调的。因此,NS2是众多国内外高校、科研机构网络模拟研究的首选工具,研究使用它的人数众多。综上所述,我们选用NS2作为平台的网络模拟工具。<br> 2.2 网络建模工具的优选<br> 目前能够与NS2结合使用的建模工具有NSBench与NSG2,这两个建模工具独立于NS2,均由JAVA开发,移植性与可视化操作好。它们能够根据用户设计的网络场景自动生成NS2可以执行的TCL(Toolkit Command Language)脚本。这就使用户从重复、繁琐的编写代码的工作中解放出来,从而可以节省时间以集中研究网络性能优化问题。<br> 虽然这两个工具都为脚本自动生成工具,但他们之间仍然存在以下区别:<br> (1) GUI的友好性。NSG2比NSBench的界面更加美观,学生操作起来更方便,更容易上手。NSG2在学生的工作区域添加了网格线以及实现了缩放功能,利用NSG2设计出来的网络模型整齐规范。<br> (2) 适用范围的广泛性。NSBench只能对有线网络进行建模,而NSG2在NSBench原有的有线网络建模基础上添加了无线网络的建模,从而扩充了通过工具建模的范围。<br> (3) 脚本代码的规范性。NSBench自动生成的TCL脚本不够完整,学生需手动添加代码才能保证其在NS2上运行顺利,而NSG2代码格式规范,学生无需修改即可运行。<br> 通过以上比较可以看出NSG2优于NSBench,因此平台选择NSG2作为平台的网络建模工具。虽然NSG2已经比较完善,但是仍然存在英文界面有碍英文不熟练者使用、建模生成脚本与在NS2上实际运行操作不连贯等不足之处,这些问题也需要给予解决。<br> <br> 3 网络实验模拟平台的设计 <br> <br> 3.1 平台系统结构<br> 从平台的易用性与功能完整性出发,设计了一个以网络协议动态演示、网络建模与网络测试为主要功能的综合性网络实验模拟平台。图1所示,整个平台主要由“网络协议动态演示”、“网络模拟”、“安装步骤”以及“帮助”四大部分功能组成。其中,“网络协议动态演示”功能主要提供网络协议原理的说明及协议动态演示服务,“网络模拟”功能主要提供网络场景模拟及性能分析服务,“安装步骤”及“帮助”功能主要提供NS2与NSG2的安装讲解及使用帮助。 <br> <br> 3.2 网络协议动态演示功能的设计<br> 网络协议动态演示”是本实验平台主要功能模块之一,用于完成协议原理说明以及协议工作过程的动态演示,如图2所示。按照应用层、传输层、网络层和数据链路层对动态演示的协议进行了分类。参照计算机网络教材,对比较重要的网络协议及算法进行了筛选,对选出的协议原理进行文字说明及动态演示,表2列出了平台目前能够进行动态演示的网络协议与算法。<br> <br> 平台从“协议原理”、“演示说明”以及“动态演示”三个方面对每个协议进行了分析与演示。在“协议原理”部分,通过参考大量的RFC标准,方案对每个协议的原理进行了较深入的讲解。为了使用户能对协议的工作过程有一个直观的认识,平台对每一个协议的工作流程都进行了动态演示,同时在动画演示过程中添加了中文实时解说。“演示说明”部分用于静态描述协议动态演示的整个过程,以方便用户对协议动态演示中一些细节部分的理解。<br> <br> 3.3 网络模拟集成环境的设计<br> 平台的另一个主要功能是为使用者提供了一种网络建模与网络测试相结合的集成环境。如图3所示,“网络模拟”功能模块由“网络模拟流程”与“开始场景模拟”两大部分组成。在“网络模拟流程”模块中,本方案结合一个实际的案例对如何使用NSG2及NS2进行网络建模与网络测试进行了详细的讲解。<br> <br> “开始场景模拟”是“网络模拟”功能模块的核心部分,该模块为用户提供了网络建模与网络测试所需的环境。为了缩短网络模拟测试的整个工作周期,方案设计了一种网络建模与网络测试合二为一的实验环境。用户在利用网络建模工具进行网络建模之后可以直接进入网络测试环境,而不需要再去利用独立的网络模拟软件对所建模型进行测试。<br> </p> <p> <p>3.4 安装步骤及帮助功能的设计 <br> NS2是在Unix系统上开发的,因此Unix、Linux和类Unix系统是安装NS的最佳平台,当然如果NS2要在Windows平台上运行则需要安装Unix仿真环境cygwin。除此之外,NS2的运行还需要许多软件的支持,例如Tcl、Tk、otcl和Tclcl等软件包。这些安装过程是繁琐且容易出错的,稍有不慎就会导致安装失败,基于此种考虑平台在“安装步骤”模块中对NS2的安装步骤进行了详细的描述。<br> 在“使用帮助”模块中,平台对NS2的基本原理进行了介绍,并提供了大量的帮助文档,为学生进一步学习使用NS2提供了帮助。<br> <br> 4 网络实验模拟平台的实现 <br> <br> 4.1 平台框架的实现<br> 利用HTML结合JavaScript语言的方式对网络实验模拟平台进行了开发,最后利用HTMLRunExe工具对整个平台进行了封装,使整个平台成为一个独立的EXE可执行文件,以方便整个平台的管理与移植。<br> 把平台的初始界面划分为三大部分,第一部分是平台主菜单栏,用于提供平台的主要服务,具体包括协议动态演示、网络模拟、安装步骤及帮助这四种服务。平台第二部分是四种主服务所对应的子菜单栏。第三部分用于显示子菜单栏中相应服务所提供的实际内容。 <br> 4.2 协议动态演示功能的实现<br> 在协议动态演示部分,平台对“应用层”、“传输层”、“网络层”和“数据链路层”各层包含的协议进行了原理解释与动态演示。为了能够在子菜单栏中对四个层次的协议进行多级显示,平台采用了JavaScript语言对子菜单栏进行了设计,如图4所示。<br> <br> 在“协议动态演示”主界面,平台首先对协议在动态演示中所涉及到的节点含义进行了解释说明。在每个具体协议所包含的“协议原理”部分,平台对协议原理进行了仔细讲解,同时为了满足用户对协议进一步研究的需求,平台提供了每个协议原理所对应的RFC标准。在“演示说明”部分,平台对每个协议原理动态演示过程进行了静态描述,同时还对演示中需要注意的事项进行了说明。<br> 在“动态演示”部分,为了实现协议原理的动态演示,采用TCL脚本语言描述相关协议原理的工作工程,利用NS2自带的动画演示工具NAM对协议进行动态演示,并对每个协议的演示过程进行录制。如图5所示,为了解决NAM不支持中文同步解释说明的问题,方案使用Flash工具对录制的视频文件进行了二次处理,通过修改NAM下方的注释部分为协议动态演示过程提供实时的中文解释功能。<br> <br> 4.3 网络模拟集成环境的实现<br> 在“网络模拟”服务中,平台主要为用户提供了网络建模与网络测试两个功能。为了减轻用户在网络模拟过程中的工作量,优选了NSG2作为平台的网络建模工具,NSG2不仅为用户提供了图形化的操作界面,同时支持TCL脚本的自动生成。为了使用户更易于操 摘 要:本文通过全面论述计算机图形学的知识结构体系与它在计算机科学教育中的作用与地位,提出把计算机图形学列入计算机专业的核心课程,以弥补“高等学校计算机科学与技术专业发展战略研究报告暨专业规范(试行)”与“高等学校计算机科学与技术专业公共核心知识体系与课程”中对计算理论“能行性”教育的缺失与应用软件编程系统训练的不足。<br> 关键词<br>本文来自:计算机毕业网 :计算机图形学;计算机教育;核心课程;软件系统;应用开发<br> <br> 1 引言<br> <br> 2006年,国家教育部高等学校计算机科学与技术教学指导委员会编制出版了“高等学校计算机科学与技术专业发展战略研究报告暨专业规范(试行)“(以下简称”新专业规范“)[1],该“新专业规范”指出:由于计算机专业是全国在校人数最多、高校开设专业最多的专业,这导致计算机类专业毕业生目前出现就业困难,其主要原因还是计算机人才的培养满足社会需要的针对性不够明确,导致了人才结构上的不合理。解决方法是分类培养、使计算机专业的学生能有相对优势的知识结构,高校教育应该为计算机专业现在的毕业生增加专业特色、增强就业竞争优势,等等。并由此提出了“高等学校计算机科学与技术专业公共核心知识体系与课程”(以下简称“核心课程”)[2]。无疑,这对全面规范并提高国内计算机教育的整体水平具有非常大的指导作用。通过认真学习研究这些内容之后发现,究竟应选择哪些课程作为计算机的公共核心课程供全国各行业人员作为学习计算机的基础知识,以及一些课程的教学内容应该如何安排,才能做到既拓展计算机专业学生的知识领域、又能增加学生毕业后的就业渠道等,这些都是大家不断思考的问题。而计算机“核心课程”的选择似乎对上述已有问题的解决帮助不够,而增加计算机图形学的教育对解决这些问题是一个值得借鉴的好方法,理由如下(不妥之处,请批评指正)。<br> <br> 2 计算机图形学课程列入核心课程,弥补本科教学计算能行性教育的缺失<br> <br> 作为具有全国指导意义的“新专业规范”,应该为计算机教育在多个行业方向的发展奠定基础,而抽出它们所共有的基础课作为计算机本科教育的核心课程,但现有的“新专业规范”的公共“核心课程”[2]只有<br> 程序设计<br> 离散数学<br> 数据结构<br> 计算机组成<br> 计算机网络<br> 操作系统<br> 数据库系统<br> 等7门课程内容,而把“计算机图形学”课程排斥在核心课程之外,这显然不利于计算机应用的全面发展,不利于计算机动画、游戏、图形标准、计算机仿真、计算机辅助设计与制造等计算机应用软件行业的全面发展,会缩小计算机本科生毕业之后的就业面,也与制定“新专业规范”的初衷相悖。<br> 什么能被自动计算一直是计算机界探讨的主题之一[8],那些确切能用计算方法解决的问题如何设计才能被计算机自动计算简称计算的能行性(可计算性的实现前提),而程序设计与数据结构这两门课程是计算机编程的基础,它们作为计算机的公共核心课程是必须的。但这两门课程(该“程序设计”课程实为计算机程序设计语言+语句的简单应用,“数据结构”讲授程序加工的数据如何配合算法进行有效管理安排、以实现算法的功能)并没有从理论上解决计算机程序根据什么原则才能进行有效设计、以及程序如何构成系统后才能最后自动解决用户提交的计算问题,这是国内“程序设计”课程多年来悬而未决的老大难题。其原因在于:讲授程序设计语言时,学生还没有数据结构方面的知识,而数据结构本身既不讲模型方法、又不讲解软件系统等概念,同时这两门课程也缺少具有复杂计算模型的大规模实用软件编程的整体训练内容与方法,若把这些缺失的内容都加入到教学中,则一无足够的课时、二是改变了授课的性质。所以,从算法语言的角度介绍程序的设计方法是不完备的。<br> 对于这个问题,计算理论早已从计算的机理与实现上予以解决。但计算理论的内容一般只在研究生阶段讲授,且计算理论是研究生的一个专业方向、即使该理论在研究生阶段讲授、学生理解也有一定难度,而把这套理论方法直接用于实践以解决实际应用问题难度更大[9]。即现有成熟的程序设计理论与方法没有通过适当的载体引进本科课堂教学中是现行教育政策最大的不足,而计算机图形学是直接从应用软件开发的角度阐述计算的“能行性”问题(见下述),当其列入计算机的核心课程后,既能弥补上述计算理论教育中缺失的一环,也能有效弥补上述7门核心课程中计算机应用软件编程系统训练不足的尴尬。事实上,GPU(图形处理芯片)与CPU在PC机上的发展并驾齐驱,证明计算机图形学是计算机科学中不可缺少的重要研究领域,可这些没有在“核心课程”[2]中得到有效的体现令人不解。<br> <br> 3 计算机图形学的知识结构体系<br> <br> 3.1 计算机图形学的研究对象、研究方法与基本教学内容<br> 计算机图形学 的最终目的就是用计算机程序的方法在计算机显示器屏幕上生成图像效果,特别是生成类似照相机拍摄的三维图像。而照相机拍摄三维图像是一个具体的物理过程,它的基本原理是光线在空间物体之间相互传播,当光线被物体表面反射并被照相机接收后形成的显示效果。由于人们能从二维照片上光点的亮度与大小判断出物体表面该点距照相机的相对远近,故人们常称这种图像为三维图像。用计算机程序的方法生成具有高度真实感的图形就是对上述物理过程的一种近似仿真模拟得到的效果。为了达到这一目的,人们根据仿真方法的要求,建立了仿真过程需要的各种模型(包括照相机模型,灯光模型,颜色模型,照明模型,物体的几何模型,物体表面的材质与纹理模型),通过①模型数据的输入(交互输入、编程输入、文件输入等)、②数据的存储与管理(系统参数文件、图形模型数据文件、规格化图形数据文件、物理显示设备的图形显示文件)、③数据的运算处理(物体的几何变换、全剖切运算、集合运算、三维重建算法、物体的各种变形运算等)、④数据的输出(各种线段图形的生成与实面积多边形的填充算法、着色算法、消隐算法、纹理映射算法、阴影算法,光线跟踪算法与辐射度算法)等4个处理过程,用系统编程设计的方法实现其图形显示[7]。<br> 这里照相机模型描述了三维空间中的点、线、面等图形投影转换成二维空间中点、线、面等图形,并调用二维图形的生成算法生成二维图像,同时裁剪超出显示范围的三维图形、便于图形的正确显示。灯光模型与颜色模型描述了光线产生的根源、点光源的空间几何分布、光线在空间中的传播方向与衰减规律,光线的色彩属性、亮度计算方法与合成色的变化规律等内容。照明模型描述了物体表面反光或透光能力的计算方法。物体的几何模型描述了一个物体的点线面等几何尺寸与大小。材质特性描述了各物体表面对各种性质光线的反光与透光能力的大小。纹理模型直接描述了物体表面各点的显示细节与像素值。着色算法确定了用何种插值算法填充多边形网 格表面、使其显示效果是多边形网格效果或是一张光滑的曲面效果。消隐算法确定显示物体表面的各个可见表面与边线,不显示其被遮挡的不可见的表面与边线。纹理映射算法就是把一张照片映射至物体的表面上(又称贴图),而这个照片既可以是实际照相机拍摄的三维照片,也可以是用数学模型描述并动态产生的结果。在场景中,由于某些遮挡物的存在,光线不能直接照射到某些物体的表面,使得这些表面反光(透光)的亮度暗于被光线直接照射物体表面的亮度;观察的角度不同,所见这种阴影效果的形状与大小不一样;阴影算法即在场景图中统一绘制这种阴影显示效果与非阴影显示效果。光线跟踪算法、辐射度算法就是仿真光线的传播过程以达到最后生成所需的图像效果。<br> </p> <p> <p>事实上,在计算机图形学的应用领域中仅研究这些模型还不够,还要用程序设计语言与数据结构的知识把它们都转换成一个个可执行的算法,并用系统编程的方法把这些算法构成一个软件系统整体,才能方便各种图形的生成。而在这个软件系统中生成图形的第一步是构造多种物体的几何模型与形状(物体的几何变换、全剖切运算、集合运算是用简单物体构造复杂物体的有效工具之一,三维重建算法是用点、线、面等元素恢复物体外壳的几何形状),在统一的世界坐标系中确定它们的位置与朝向,再逐一确定物体表面的材质特性与纹理效果等,使这种多物体造型(称场景造型)满足实际应用的需要。第二步是设置灯光与灯光的特性,设置照相机模型等。第三步是在上述二步的基础上,统一用光线跟踪算法或辐射度算法生成上述场景造型所对应的三维图像效果(又称渲染)。<br> 应注意:<br> ① 试图精确的构造现实世界中所有物体、特别是具有复杂结构或微小结构或细微动态变化物体的几何模型既不现实、其代价也太大,人们总是想用其它的方法来代替,这就是所谓分形描述、粒子描述建模等多种其它建模方法的来源;<br> ② 完全按照物理学上光线的传播方法来生成图像太费时间,光线跟踪算法、辐射度算法事实上是对物理光线传播方法的一种近似。这个近似程度一般由图像显示的真实感与计算的复杂度来确定。<br> ③ 在上述场景造型的构造过程中,若物体运动或变形,灯光改变照射的范围、朝向、亮度、色彩,照相机改变拍摄的方向或跟踪拍摄,此时若连续拍摄(即渲染)三维空间场景效果,就形成了多帧图像,连续播放这些多帧图像就是计算机动画。<br> ④ 所谓图形标准就是把上述的照相机模型、点光源的灯光模型、颜色模型、简单的照明模型、着色算法,以及点线面、多边形网格模型等模型与算法用硬件实现,并由图形标准提供软件接口方法调用这些硬件功能;当用户向该图形标准提供上述模型的描述数据与材质、纹理描述数据之后,计算机就能用硬件加速的方法实现在显示器中高速生成点线面、多边形网格,以及光照效果的表面、纹理效果等图形。目前的图形标准本身并不负责物体几何模型的构造,也不负责管理 摘要:对于SQL语句优化,因为会有成千上万条SQL语句访问Oracle数据库,所以这是最费时间的调整操作。所谓的SQL语句优化就是选择最有效的执行计划来执行SQL语句的过程。本文对Oracle中SQL的优化原理进行了分析。<br> 关键词:Oracle;优化;SQL<br> <br> 1数据库优化的必要性<br> <br> 随着数据库技术应用越来越广泛,用户日益增长,使数据量越来越大,且伴随数据挖掘、数据分析不断深人,数据处理也越来越复杂,庞大数据量加上复杂数据处理过程,使数据库服务器经常超负荷运作,甚至出现死锁现象,严重影响使用效果,若不注重SQL 查询优化策略,往往在系统投人初期使用时查询反应迅速,使用流畅,但随着数据库表中记录数据量越来越大,系统响应速度越来越慢,甚至无法正常响应,就可能导致系统可用性降低,失去实用价值。因此,科学地构造数据库结构,合理使用查询语句及查询方法,是成功开发和应用数据库系统重要环节,对于SQL语句优化,因为会有成千上万条SQL语句访问Oracle数据库,所以这是最费时间的调整操作。所谓的SQL语句优化就是选择最有效的执行计划来执行SQL语句的过程,这是在处理任何数据的语句(SELECT,INSERT,UPDATE或DELETE)中的一个重要步骤。总体上讲,就是需要识别出最常用的SQL语句,通过仔细审查SQL的执行计划以及使用Oracle提示(HINTS)调整执行计划来调整各个语句。本文就优化Oracle数据库SQL原理做一些分析。<br> <br> 2SQL优化目标<br> <br> 一般来说,Oracle的应用分为两种类型:联机事务处理(OLTP),决策支持系统(DSS)。根据应用类型的不同,性能优化的目标有所不同:<br> 2.1在线事务处理(OLTP=OnlineTransactionProcessing)<br> 该类型的应用是高吞吐量,插入、更新、删除操作比较多的系统,这些系统以不断增长的大容量数据为特征,它们提供给成百用户同时存取。OTLP的主要目标是可用性、速度、并发性和可恢复性。<br> 当设计这类系统时,必须确保大量的并发用户不能干扰系统的性能。还需要避免使用过量的索引与Cluster表,因为这些结构会使插入和更新操作变慢。<br> 此种类型的应用程序把吞吐量定义为性能指标。<br> 2.2决策支持系统(DSS=DecisionSupportSystem)<br> 该类型的应用将大量信息进行提取形成报告,协助决策者作出正确的判断。典型的情况是:决策支持系统将OLTP应用收集的大量数据进行查询。典型的应用为客户行为分析系统。<br> 决策支持的关键目标是速度、精确性和可用性。<br> 该种类型的设计往往与OLTP设计的理念背道而驰,一般建议使用数据冗余、大量索引、Cluster表、并行查询等。<br> 此种类型的应用程序把响应时间定义为性能指标。<br> 用户的应用系统属于典型的决策支持系统,用户需求的关键就是尽量减少应用程序的查询响应时间。<br> 3DML语句的处理原理<br> 用户的应用系统的主要工作就是使用DML语句对数据库进行查询,要对SQL查询语句进行优化,就必须对DML语句的处理原理有所了解。<br> DML语句的处理一般分9步:<br> 第1步:创建游标(Create a Cursor)<br> 由程序接口调用创建一个游标(Cursor)。任何SQL语句都会创建它,特别在运行DML语句时,都是自动创建游标的,不需要开发人员干预。多数应用中,游标的创建是自动的。然而,在预编译程序Pro*C)中游标的创建,可能是隐含的,也可能显式的创建。在存储过程中也是这样的。<br> 第2步:分析语句(Parse the Statement)<br> 在语法分析期间,SQL语句从用户进程传送到Oracle,<br> SQL语句经语法分析后,SQL语句本身与分析的信息都被装入到共享SQL区。在该阶段中,可以解决许多类型的错误。<br> 语法分析分别执行下列操作:翻译SQL语句,验证它是合法的语句,即书写正确;实现数据字典的查找,以验证是否符合表和列的定义;今在所要求的对象上获取语法分析锁,使得在语句的语法分析过程中不改变这些对象的定义;验证为存取所涉及的模式对象所需的权限是否满足;决定此语句最佳的执行计划;将它装入共享SQL区;对分布的语句来说,把语句的全部或部分路由到包含所涉及数据的远程节点。<br> 以上任何一步出现错误,都将导致语句报错,中止执行。<br> 只有在共享池中不存在等价SQL语句的情况下,才对SQL语句作语法分析。在这种情况下,数据库内核重新为该语句分配新的共享SQL区,并对语句进行语法分析。进行语法分析需要耗费较多的资源,所以要尽量避免进行语法分析。<br> 语法分析阶段包含了不管此语句将执行多少次,而只需分析一次的处理要求。Oracle只对每个SQL语句翻译一次,在以后再次执行该语句时,只要该语句还在共享SQL区中,就可以避免对该语句重新进行语法分析,也就是此时可以直接使用其对应的执行计划对数据进行存取。这主要是通过绑定变量(Bind Variable)实现的,也就是共享SQL。<br> SQL查询语句与其它类型的SQL语句不同,因为在成功执行后作为结果将返回数据。其它语句只是简单地返回成功或失败,而查询则能返回一行或许多行数据。查询的结果均采用表格形式,结果行被一次一行或者批量地被检索出来。从这里可以得知批量的Fetch数据可以降低网络开销,所以批量的Fetch也是优化的技巧之一。<br> 第3步:描述查询结果(Describe Results of a Query)<br> 描述阶段只有在查询结果的各个列是未知时才需要;例如,当查询由用户交互地输入需要输出的列名。在这种情况- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 网络安全 课程 中的 实践 教学研究 探索
咨信网温馨提示:
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【xrp****65】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【xrp****65】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【xrp****65】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【xrp****65】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
关于本文