CN1564536A - 基于攻防和视频组播技术的网络化交互式教学实验方法 - Google Patents
基于攻防和视频组播技术的网络化交互式教学实验方法 Download PDFInfo
- Publication number
- CN1564536A CN1564536A CN 200410017021 CN200410017021A CN1564536A CN 1564536 A CN1564536 A CN 1564536A CN 200410017021 CN200410017021 CN 200410017021 CN 200410017021 A CN200410017021 A CN 200410017021A CN 1564536 A CN1564536 A CN 1564536A
- Authority
- CN
- China
- Prior art keywords
- dll
- hook
- student
- defending
- network
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Electrically Operated Instructional Devices (AREA)
- Information Transfer Between Computers (AREA)
Abstract
一种基于攻防和视频组播技术的网络化交互式教学实验方法,用于网络信息技术领域。本发明通过TCP/IP网络通信协议搭建一个基础框架,即用TCP/IP协议族将网络中的教师机和学生机连接起来,组成一个能互相传输数据进行通信的框架,在此框架上,使用网络攻防中的进程隐藏来维持正常的学生机教学环境;使用屏幕实时图像编码实现广播的质量和速率的提高;使用文件压缩来主动获取学生机上的文件;使用Socks5协议代理保证传输数据的稳定性;使用内存映射来监控学生机的操作情况;使用远程命令来控制学生机。本发明更有效地利用现有技术和软硬件环境,结合传统教学手段和计算机网络的优势,开展大规模的教学实验活动,并对结果进行评估。本发明重点强调学生的参与性。
Description
技术领域
本发明涉及一种实现教学实验的方法,具体是一种基于攻防和视频组播技术的网络化交互式教学实验方法。用于网络信息技术领域。
背景技术
随着计算机网络的普及,现有的多媒体电化教学方法已经不能满足现代教学的要求,而网络化的教学方式越来越受到广大师生的青睐。当前,多媒体网络化教学方法需要解决的问题主要是如何将教学内容变得更加生动形象,并且提供学生亲手进行实践操作的环境。
经检索发现,发明名称为:多媒体网络教学系统,中国专利申请号为96113421.6,中国专利公开号为1177144A。该专利提出了一种多媒体网络教学方法,不需要网络服务器或网络操作系统。该多媒体网络教学方法包含一个教师工作站作为该系统的监导者、一些学生工作站、一个用以传输命令的网络界面以及一个用以传输声频与视频资讯的多媒体界面。上述每个工作站包含一台个人电脑、一个多媒体传输器、一个网卡、以及一个控制面板。该教学系统的软件可分为教师部分与学生部分,上述教师工作站必须执行该两部分软件,但学生工作站只需执行学生部分软件即可。这一方法完全可以实现声频、视频广播的多媒体网络教学,优点在于省去了网络服务器、网络操作系统。缺点在于,由于该方法中只使用了一个IPX和封包驱动标准,在教师机与学生机之间传送命令讯息。IPX是NOVELL用于NETWARE客户端/服务器的协议群组,它避免了NETBEUI在缺乏路由和网络层寻址功能上的缺点,但是它也有自身的缺点。IPX的可扩展性受到其高层广播通信和高开销的限制。服务访问点(SAP)将路由网络中的主机数限制为几千。尽管SAP的局限性已经被智能路由器和服务器配置所克服,但是大规模IPX网络的管理仍是非常困难的。此外,以上方法还未考虑如何在学生机采取一定的措施维持一个良好的教学环境,因此,学生可很轻松地通过结束进程的方法脱离教师的管理,从而破坏学生机的教学环境。
发明内容
本发明针对现有技术的不足和缺陷,提供一种基于攻防和视频组播技术的网络化交互式教学实验方法,使其可以更有效地利用现有技术和软硬件环境,结合传统教学手段和计算机网络的优势,开展大规模的教学实验活动,并对结果进行评估。本发明重点强调学生的参与性,实现网络化交互式可扩展的教学实验。
本发明是通过以下技术方案实现的,本发明通过TCP/IP网络通信协议搭建一个基础框架,即用TCP/IP协议族将网络中的教师机和学生机连接起来,组成一个能互相传输数据进行通信的框架。在传输中若发生数据丢失、传输失真,则TCP会自动要求数据重新传输,用TCP/IP建立的网络可以保证数据完整传输,在此框架上,
(1)使用网络攻防中的进程隐藏来维持正常的学生机教学环境;
(2)使用屏幕实时图像编码实现广播的质量和速率的提高;
(3)使用文件压缩来主动获取学生机上的文件;
(4)使用Socks5协议代理保证传输数据的稳定性;
(5)使用内存映射来监控学生机的操作情况;
(6)使用远程命令来控制学生机。
本发明能实现:广播教学、语音教学、语音对讲、学生演示、监控转播、屏幕录制与回放、远程命令、文件分发、视频转播、黑屏肃静、班级模型、远程设置、实验结果查看,实验评分与生成成绩单报表。
与背景技术中提到的IPX相比,本发明采用的TCP/IP网络通信协议允许与Internet完全的连接。TCP/IP可以满足可扩展性和可靠性的需求。
以下对本发明作进一步的说明,具体内容如下:
1.进程隐藏:
本发明在进程隐藏技术方面采用了钩子(Hook)技术使得学生机不可能破坏教学实验环境。
在Windows系统中每个进程都有自己的私有内存空间,任何普通的进程不能够对其它进程进行操作。但是利用窗口钩子及远程插入线程技术就可以进入并操作其它进程的私有内存。这样就可以把学生机程序植入到系统进程中,系统进程是windows系统运行时所必需的,从而实现进程隐藏。
Windows允许用户安装的钩子函数有很多种,如消息钩子、鼠标钩子、键盘钩子等。钩子函数是通过Set Window Hook函数(或者它的增强版本SetWindowHook
Ex)来安装的,被安装的钩子函数都属于一个DLL。钩子函数的特性是:如果钩子回调函数由一个DLL提供,而被钩住的进程并没有加载这个DLL,那么系统会自动给这个进程加载这个钩子DLL。这样,只要使用SetWindowsHook为目标进程安装一个属于某DLL的钩子函数,就可以强迫目标进程加载这个DLL。
SetWindowsHookEx的函数原型为:
HHOOK SetWindowsHookEx(int idHook, //钩子类型HOOKPROC lpfn, //钩子函数HINSTANCE hMod, //DLL句柄DWORD dwThreadId //线程ID); |
其中,第一个参数int idHook为钩子类型。在这里选用消息钩子,即WH_GETMESSAGE。
第二个参数HOOKPROC lpfn用来指定钩子回调函数,这个函数将在钩子事件发生时被调用,因为这个函数是由DLL文件(即用来进行信息密取的DLL文件,下面简称为Our DLL)所提供的,所以被钩进程会自动加载DLL模块;
第三个参数HINSTANCE hMod是包含钩子函数的Our DLL的句柄;
第四个参数DWORD dwThreadId是与钩子函数相关联的线程ID,如果这个参数设为0,那么钩子函数将与本桌面上的所有线程关联。
假设钩子DLL的句柄为g_hinstDll,需要钩住的线程ID为dwThread,钩子回调函数为GetMsgProc(),那么通过下面的代码,就可以为目标进程加载一个MESSAGE钩子,也就是说,向目标进程嵌入了包含钩子函数的DLL:
SetWindowsHookEx(WH_GETMESSAGE,GetMsgProc,g_hinstDll,dwThreadId); |
通过上述代码,就可将包含GetMsgProc函数的DLL嵌入任何目标进程(只要权限允许),但如果钩子安装进程退出,那么系统也会自动卸载所有的钩子DLL,因为已经不再需要钩子函数了。针对这个问题,一个简单的解决方法就是多使用一个DLL文件,在钩子安装进程的Our DLL之间增加一个钩子DLL,钩子安装进程加载钩子DLL,再从钩子DLL中加载信息密取DLL,钩子安装进程退出时钩子DLL会随之退出,但是信息密取DLL并不会退出,这样就实现了进程内信息密取DLL的常驻。假设钩子安装进程为Internat32.exe,钩子DLL为HookDll.dll,Our DLL为our.dll,目标进程为Explorer.exe,那么信息密取DLL常驻目标进程的过程如下:
(1)随着操作系统启动,系统必须的程序Internat32.exe开始运行;
(2)Internat32.exe加载HookDll.dll,HookDll.dll被植入程序Explorer.exe;
(3)HookDll.dll加载our.dll,our.dll被植入Explorer.exe;
(4)操作系统启动完毕,Internat32.exe退出;
(5)Explorer.exe退出,同时HookDll.dll被卸载;
(6)our.dll继续驻留在系统中。
通过这项技术,就能将完成信息密取功能的DLL函数成功插入到任何一个目标进程中去,再结合反弹端口的数据传输方式就能实现躲避防火墙的功能了。
2.屏幕实时图像编码
本发明所用的屏幕实时图像编码技术——LZW的压缩算法,优点是在传输时可以选择不同的色深,而且具有很好的隐蔽性。
根据本发明的需求,需要实现教师机发送指令获取远程学生机当前窗口或整个屏幕静态图像的功能。考虑到实际传输中带宽对于性能的影响,在传输时可以选择不同的色深(包括1、4、8、16和32位等)对应不同大小的数据量。
屏幕捕获时先获得窗口句柄截取位图,然后转换成设备无关位图(DIB)格式存入一段内存空间,最后对这段内存空间的数据进行压缩。获取位图,转换格式等基本操作都用的是windows的API函数,整个截取分为三个模块:获取信息模块、转换格式模块和压缩并存储信息模块。
为了保证数据压缩的高效性和保密性,本发明采用LZW的压缩算法。该算法对于连续出现的重复数据压缩率很高,因此对于大面积内容相同的图像数据压缩效果很显著,且还原后对数据没有很大的损失。测试结果显示一幅全屏幕的图像在压缩后最小只有10K左右,且还原后也很清晰。
LZW编码是围绕称为词典的转换表来完成的。这张转换表用来存放称为前缀(Prefix)的字符序列,并且为每个表项分配一个码字(Code word),或者叫做序号。这张转换表实际上是把8位ASCII字符集进行扩充,增加的符号用来表示在文本或图象中出现的可变长度ASCII字符串。扩充后的代码可用9位、10位、11位、12位甚至更多的位来表示。LZW编码器(软件编码器或硬件编码器)就是通过管理这个词典完成输入与输出之间的转换。LZW编码器的输入是字符流(Charstream),字符流可以是用8位ASCII字符组成的字符串,而输出是用n位(例如12位)表示的码字流(Codestream),码字代表单个字符或多个字符组成的字符串。LZW编码器使用贪婪分析算法,在贪婪分析算法中,每一次分析都要串行地检查来自字符流的字符串,从中分解出已经识别的最长的字符串,也就是已经在词典中出现的最长的前缀Prefix。用已知的前缀Prefix加上下一个输入字符C也就是当前字符作为该前缀的扩展字符,形成新的扩展字符串——缀-符串String:Prefix.C。这个新的缀-符串String是否要加到词典中,还要看词典中是否存有和它相同的缀-符串String。如果有,那么这个缀-符串String就变成前缀Prefix,继续输入新的字符,否则就把这个缀-符串String写到词典中生成一个新的前缀Prefix,并给一个代码。
3.文件压缩
本发明使用了基于LZ77算法的自适应滑动窗口压缩算法,可以由教师机主动获取学生机上的文件,整个过程是隐秘和安全的。该算法将一个虚拟的、可跟随压缩进程滑动的窗口作为术语字典,要压缩的字符串如果在该窗口中出现,则输出其出现位置和长度。使用固定大小窗口进行术语匹配,而不是在所有已经编码的信息中匹配,是因为匹配算法的时间消耗往往很多,必须限制字典的大小才能保证算法的效率;随着压缩的进程滑动字典窗口,使其中总包含最近编码过的信息,要编码的字符串在最近的上下文中能找到匹配串。
该算法的实现流程是,设定窗口的大小为10个字符,刚编码过的10个字符是:abcdbbccaa,即将编码的字符为:abaeaaabaee。首先发现,可以和要编码字符匹配的最长串为ab(off=0,len=2),ab的下一个字符为a,输出三元组:(0,2,a)。现在窗口向后滑动3个字符,窗口中的内容为:dbbccaaaba。下一个字符e在窗口中没有匹配,输出三元组:(0,0,e)。窗口向后滑动1个字符,其中内容变为:bbccaaabae。马上发现,要编码的aaabae在窗口中存在(off=4,len=6),其后的字符为e,可以输出:(4,6,e)。这样,将可以匹配的字符串都变成了指向窗口内的指针,并由此完成了对上述数据的压缩。
解压缩的过程:只要向压缩时那样维护好滑动的窗口,随着三元组的不断输入,在窗口中找到相应的匹配串,缀上后继字符c输出(如果off和len都为0,则只输出后继字符c)即可还原出原始数据。
在压缩功能模块的具体实现中,使用对匹配串和单个字符分类输出的模型,输出匹配串时,off采用定长编码,len采用γ编码。索引结构采用2字节长字符串的索引,使用256*256大小的静态数组存储索引点,每个索引点指向一个位置链表。链表节点考虑了对aaaaa...之类的重复串的优化。
本发明使用了64k大小的固定长度窗口,窗口不做滑动(因此不需要环形偏移系统,也节省了删除索引点的时间)。压缩函数每次只对最多64k长的数据进行压缩,主函数将原始文件分成64k大小的块逐个压缩存储。使用这种方法可增大匹配的概率,字符串可在64k空间内任意寻找最大匹配串,以此提高压缩效率;此方法分块压缩的数据,很容易从原始文件中间的任何一个位置开始解压缩。
4.Socks5协议代理
Socks5代理的开发分为两个部分,远程受控端部分向Socks5服务器发送连接请求提交认证信息,代理服务器接收到连接请求后验证如果通过就向本地控制端发送连接请求,当与远程受控端的连接建立后就在这两条连接之间转发消息,此时的远程受控端和本地控制端与直接连接时工作模式完全一样。考虑到传输的稳定性要求代理服务器对于持续的信息转发要保持不高于5%的丢包率。
采用的Socks5代理是基于RFC1928中关于TCP协议下Socks5的描述实现的。当一个基于TCP协议的客户端希望通过Socks5代理建立与其他机器的连接时,必须首先建立一个与Socks5服务器上socks端口的TCP连接。通常这个TCP端口是1080。当连接建立后,客户端进入协议的“握手(negotiation)”过程:认证方式的选择,根据选中的方式进行认证,然后发送转发的要求。Socks5服务器检查这个要求,根据结果或建立合适的连接或拒绝。
客户端连到Socks服务器后,发送请求来协商版本和认证方法。
这个版本的Socks协议中,VER字段被设置成X05。NMETHODS字段包含了在METHODS字段中出现的方法标示的数目(以字节为单位)。服务器从这些给定的方法中选择一个并发送一个方法选中的消息回客户端。
如果选中的消息是XFF,这表示客户端所列出的方法列表中没有一个方法被选中,客户端必须关闭连接。
然后客户和服务器进入由选定认证方法所决定的子协商过程(sub-negotiation)。一旦子协商过程结束后,客户端就发送详细的请求信息。如果协商的方法中有以完整性检查和/或安全性为目的的封装,这些请求必须按照该方法所定义的方式进行封装。
socks代理服务器会根据源地址和目的地址来分析请求,然后根据请求类型返回一个或多个应答。如果选中的方法中有以完整性检查和/或安全性为目的的封装,这些应答必须按照该方法所定义的方式进行封装。在收到应答之后,远程受控端就可以传送数据了。
5.内存映射
本发明采用内存映射技术来实现对于键盘和鼠标的记录全程监控,配合其它技术实现主动上传和各种配置。该技术使硬件的监控获取与记录信息的软读取完全地脱离开来,从而使获取、记录、传输三者完全独立,达到全程监控,随时获取甚至是自动获取的功能。在保证记录的完整性和工作的自动化方面实现了较好的效果。
内存映射文件是一种文件缓冲算法,与虚拟内存一样,内存映射文件可以用来保留一个地址空间的区域,并将物理存储器提交给该区域。使用内存映射文件,使同一台计算机上运行的多个进程能够相互之间共享数据。内存映射文件是单个计算机上的多个进程互相进行通信的最有效的方法。
通过内存映射文件,可以将磁盘上文件的全部和部分映射为一个视图到进程虚拟地址空间的某个位置。一旦完成了映射视图,对文件内容的访问就如同在该地址区域内直接对指针取值一样简单。这样,向文件中写入数据就可以直接对指针进行赋值。同时大量的文件I/O通过缓冲处理来提高系统的整体性能。当然,也可以通过调用内存映射文件函数Flush View Of File强制立即执行磁盘事务处理以重载这种缓冲处理方式。
6.远程命令
远程命令是一个大类,都是在远程执行一个指令给操作系统。远程命令这个大功能下又有远程命令这个小类,这个小类主要是发送执行、打开某个程序的功能,不包括远程重启、远程关机等命令。
这一功能可以通过用Socket建立TCP/IP连接来实现。具体地说:先用Socket建立连接TCP/IP连接,然后由教师机向学生机发送控制数据,学生机接收到数据后,先进行判断是否为有效命令,再执行相应的程序。远程开机和远程重启、远程关机原理上有较大的区别。
远程开机时,机器的操作系统还没启动,所以不是靠发指令给操作系统,而是调用网卡上的指令。这是需要主板和网卡支持,主板中的BIOS要选中对应选项。网卡和主板有一个单独的接线,这样网卡接收启动指令后能传给主板。而在背景技术中并不具备远程开机和远程重启这两个功能。
由于本发明使用的进程隐藏技术,具有与操作系统绑定,随系统进程开始而开始的优点,所以对学生机来说是不可抗拒的,所以教师机可以维持教学实验环境;使用屏幕实时图像编码技术来实现学生机屏幕录制,具有传输数据量小的优点,可以达到在教学实验过程中实时监控学生机屏幕和传输其屏幕数据的效果;使用文件压缩技术,可以在隐蔽的从学生机获取文件;使用内存映射技术可以对学生机的全部操作进行监控,使得在学生机整个教学过程不能用结束进程的方法来破坏教学。
附图说明
图1本发明各项技术、功能间的层次关系图
具体实施方式
如图1所示,本发明方法的基础技术是网络通信、网络攻防、音视频处理,具体使用的是由基础技术拓展出来的TCP/IP、UDP/IP协议技术,SOCKET5通信技术,进程隐藏、端口隐藏技术,信息获取、数据截获技术,屏幕实时图像编码技术,文件压缩技术,音视频数据压缩、传输、同步、解压、播放技术,内存映射技术和远程命令技术。使用网络攻防中的进程隐藏来维持正常的学生机教学环境;使用屏幕实时图像编码实现广播的质量和速率的提高;使用文件压缩来主动获取学生机上的文件;使用Socks5协议代理保证传输数据的稳定性;使用内存映射来监控学生机的操作情况;使用远程命令来控制学生机。这样就可以实现网络化交互式教学实验方法。本发明在实施后,人机交互的界面上会有“实验导航”、“实验内容介绍”、“实验素材共享”、“实验工具”、“实验结果查看”、“实验评分”、“生成成绩表单”、“文件分发”、“网络影院”、“黑屏肃静”、“广播教学”、“语音教学”、“学生演示”、“监控转播”、“屏幕录制”、“屏幕回放”、“远程命令”选项,供学生和教师选择。
本发明给出了这一基于攻防和视频组播技术的网络化交互式教学实验方法。而在这一教学实验方法中,本发明又给学生提供了许多有关以上这些具体技术的学习资料、操作实验、研究性试验。
下面结合本发明中学生进行具体实验操作来说明本发明的具体实施方式:
1)教师机通过远程命令中的远程开机功能打开学生机;
2)学生先在“实验内容介绍”里了解该实验的具体内容,操作步骤,注意事项,这里教师机通过和学生机通过用Socket建立TCP/IP连接来实现。具体地说:先用Socket建立连接TCP/IP连接,教师机确认学生机所需要了解的是哪项实验,然后由教师机向学生机发送文件数据,学生机接收到数据后,通过网页浏览的方式直接在屏幕上进行学习;
3)学生然后可以在“实验素材共享”和“实验工具”中仔细学习作该实验所应该了解的知识点,应该掌握的工具,可能还有现有的实验过程可供参考,这也是用2)中的方法来实现;
4)学生选择学生演示来观看现有的实验过程以做参考,教师节通过2)中建立的网络连接收到请求后,就可以调用本地的相应视频文件,以符合UDP/IP协议的方式在局域网上向该学生机发送多媒体节目:首先,读取视频文件中的扇区结构把每一扇区的数据封装到单独的一个UDP报文中,并利用端口地址来标识发送的通道。然后把包含视频数据的UDP报文分片封装到IP报文中。最后交付给驱动软件把报文从以太网卡中发送出去。对视频信息的发送这里采用单播的形式发送。教师端发送的视频文件采用普通的文件格式(MPEG-1,MPEG-4标准),优点是节目来源丰富、成本低。例如:VCD光盘中存储的视频文件通常以后缀为DAT的文件保存,其格式是按照光盘的逻辑扇区存储格式来安排的。由于DAT文件本身就已经按照MPEG视频存储要求对MPEG-1数据进行了两层打包处理,并包一个MPEG数据封装在一个CD逻辑扇区当中,每个扇区均自带有12Byte的同步码和4Byte的校验码。利用扇区同步码可以迅速实现视频码流的同步;
5)学生这时候就可以进行具体实验了,在选择具体实验进行操作后,可以在本地写出一份实验报告,并且通过2)中建立的连接,通知教师机自己已完成实验,请求评分;
6)教师机收到请求后,通过文件分发的逆向操作,用基于LZ77的自适应滑动窗口压缩算法从学生机上获取实验报告,进行评分;
7)评分过程中教师可用黑屏肃静功能来维持教学秩序,这里是通过2)建立的连接传送一命令给学生机,使其显示全黑的图片,这既是远程控制的一部分;
8)评分结束后用分发文件功能将结果和批注发放给学生;
9)在学生做实验的过程中教师可以通过屏幕录制功能,抓取学生的实验过程,存为视频文件,并且可以进行网上广播;或者抓取重要的图片,用文件分发功能传给其他学生,这时要进行数据压缩,教师机将截获的屏幕数据按照一定的压缩算法进行压缩。这样就能保证在网上传输数据量小,传输速度快。数据发送。按照符合UDP/IP协议的网络技术,进行网上数据传输。包括网络纠错、网络丢失数据的补偿等等。教师机还能使用内存映射技术来记录学生机的鼠标、键盘操作,更完整的记录学生的实验过程;
10)实验结束后,教师可以通过远程关机命令关闭学生机。
下面这个表格是本实施例实现的主要功能和各项技术的对应关系:
班级管理 | TCP/IP协议,SOCKET通信,进程隐藏,端口隐藏 |
广播教学 | UDP/IP协议,SOCKET通信,进程隐藏,数据采集、压缩、传输、同步、解压、播放 |
语音教学 | UDP/IP协议,SOCKET通信,进程隐藏,数据采集、压缩、传输、同步、解压、播放 |
语音对讲 | UDP/IP协议,SOCKET通信,进程隐藏,数据采集、传输、同步、播放 |
学生演示 | UDP/IP协议SOCKET通信,进程隐藏,端口隐藏,数据采集、压缩、传输,内存映射 |
监控转播 | 进程隐藏,端口隐藏,数据采集、压缩、传输、解压、播放,屏幕图像压缩,内存映射 |
屏幕录制 | 进程隐藏,端口隐藏,数据截获,数据采集、压缩、传输,屏幕图像压缩,内存映射 |
屏幕回放 | UDP/IP协议,SOCKET通信,进程隐藏,端口隐藏,数据采集、压缩、传输、解压、播放 |
远程命令 | TCP/IP协议,SOCKET通信,进程隐藏,端口隐藏,锁定键盘,锁定屏幕 |
文件分发 | TCP/IP协议,SOCKET通信,UDP/IP协议,进程隐藏,端口隐藏 |
视频转播 | TCP/IP协议,UDP/IP协议,进程隐藏,端口隐藏,数据压缩、传输、解压播放 |
黑屏肃静 | TCP/IP协议,SOCKET通信,进程隐藏,端口隐藏,锁定键盘,锁定屏幕 |
远程设置 | TCP/IP协议,SOCKET通信,进程隐藏,端口隐藏 |
这样一来学生在整个实验过程中,从准备到最后完成都是通过网络来进行的,其间学生可以主动选择自己感兴趣的实验,如果学生本身水平有差异的话还可以根据自身情况来选择不同水平的实验来操作,在学习相关资料时,学生也可以有选择的来进行,这就实现了交互性网络教学实验。教师可以观察到学生进行实验的每一个步骤,有利于及时、详细的掌握学生的实验情况,对整个过程有绝对的控制权。而且整个方法的实施不受空间限制。
由于本方法的基础技术是网络通信、网络攻防、音视频处理技术,而实验又都是有关这几个方面的动手操作或设计性实验,学生在操作过程中能有更深刻的感受。
Claims (10)
1、一种基于攻防和视频组播技术的网络化交互式教学实验方法,其特征在于,通过TCP/IP网络通信协议搭建一个基础框架,即用TCP/IP协议族将网络中的教师机和学生机连接起来,组成一个能互相传输数据进行通信的框架,在传输中若发生数据丢失、传输失真,则TCP会自动要求数据重新传输,在此框架上,
(1)使用网络攻防中的进程隐藏来维持正常的学生机教学环境;
(2)使用屏幕实时图像编码实现广播的质量和速率的提高;
(3)使用文件压缩来主动获取学生机上的文件;
(4)使用Socks5协议代理保证传输数据的稳定性;
(5)使用内存映射来监控学生机的操作情况;
(6)使用远程命令来控制学生机。
2、根据权利要求1所述的基于攻防和视频组播技术的网络化交互式教学实验方法,其特征是,所述的进程隐藏,具体如下:
采用了钩子技术来实现进程的隐藏,钩子函数是通过Set Window Hook函数或者它的增强版本SetWindowHookEx来安装的,被安装的钩子函数都属于一个DLL,只要为目标进程安装一个属于某DLL的钩子函数,就能强迫目标进程加载这个DLL;同时,因为一旦钩子安装进程退出,系统也会自动卸载所有的钩子DLL,因此必须多使用一个DLL文件,在钩子安装进程的Our DLL之间增加一个钩子DLL,钩子安装进程加载钩子DLL,再从钩子DLL中加载信息密取DLL,钩子安装进程退出时钩子DLL会随之退出,但信息密取DLL还继续运行,实现了信息密取DLL常驻目标进程。
3、根据权利要求2所述的基于攻防和视频组播技术的网络化交互式教学实验方法,其特征是,假设钩子安装进程为Internat32.exe,钩子DLL为HookDll.dll,Our DLL为our.dll,目标进程为Explorer.exe,信息密取DLL常驻目标进程的过程如下:
(1)随着操作系统启动,系统必须的程序Internat32.exe开始运行;
(2)Internat32.exe加载HookDll.dll,HookDll.dll被植入程序Explorer.exe;
(3)HookDll.dll加载our.dll,our.dll被植入Explorer.exe;
(4)操作系统启动完毕,Internat32.exe退出;
(5)Explorer.exe退出,同时HookDll.dll被卸载;
(6)our.dll继续驻留在系统中。
4、根据权利要求1所述的基于攻防和视频组播技术的网络化交互式教学实验方法,其特征是,所述的屏幕实时图像编码,具体如下:
屏幕实时图像编码在传输时能选择色深,屏幕捕获时先获得窗口句柄截取位图,然后转换成设备无关位图格式存入一段内存空间,最后对这段内存空间的数据进行压缩,获取位图、转换格式都用windows的API函数,整个截取分为三个模块:获取信息模块、转换格式模块和压缩并存储信息模块。
5、根据权利要求4所述的基于攻防和视频组播技术的网络化交互式教学实验方法,其特征是,采用了LZW的压缩算法保证数据压缩的高效性和保密性,LZW编码是围绕称为词典的转换表来完成的,LZW编码器通过管理这个词典完成输入与输出之间的转换,LZW编码器的输入是字符流,输出是用码字流,码字代表单个字符或多个字符组成的字符串,LZW编码器使用贪婪分析算法。
6、根据权利要求1所述的基于攻防和视频组播技术的网络化交互式教学实验方法,其特征是,所述的文件压缩,具体如下:
使用基于LZ77算法的自适应滑动窗口压缩算法来实现文件压缩,该算法将一个虚拟的、能跟随压缩进程滑动的窗口作为术语字典,要压缩的字符串如果在该窗口中出现,则输出其出现位置和长度,使用固定大小窗口进行术语匹配,取代了在所有已经编码信息中匹配的方法,随着压缩的进程滑动字典窗口,使其中总包含最近编码过的信息,要编码的字符串在最近的上下文中能找到匹配串。
7、根据权利要求6所述的基于攻防和视频组播技术的网络化交互式教学实验方法,其特征是,使用64k大小的固定长度窗口,窗口固定,压缩函数每次只对最多64k长的数据进行压缩,主函数将原始文件分成64k的块逐个压缩存储。
8、根据权利要求1所述的基于攻防和视频组播技术的网络化交互式教学实验方法,其特征是,所述的内存映射,具体如下:
通过内存映射实现记录键盘、鼠标操作和文件获取,内存映射文件是一种文件缓冲算法,与虚拟内存一样,内存映射文件能用来保留一个地址空间的区域,并将物理存储器提交给该区域,使用内存映射文件,使同一台计算机上运行的多个进程能够相互之间共享数据。
9、根据权利要求1所述的基于攻防和视频组播技术的网络化交互式教学实验方法,其特征是,所述的Socks5协议代理,是基于RFC1928中关于TCP协议下Socks5的描述实现的,当一个基于TCP协议的客户端希望通过Socks5代理建立与其他机器的连接时,必须首先建立一个与Socks5服务器上socks端口的TCP连接,当连接建立后,客户端进入协议的“握手”过程,根据选中的方式进行认证,然后发送转发的要求,Socks5服务器检查这个要求,根据结果或建立合适的连接或拒绝。
10、根据权利要求1所述的基于攻防和视频组播技术的网络化交互式教学实验方法,其特征是,所述的远程命令,是通过用Socket建立TCP/IP连接来实现,远程开机时,学生机还处于关闭状态,是调用网卡上的指令,主板中的BIOS要选中对应选项,网卡和主板有一个单独的接线,这样网卡接收启动指令后能传给主板。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2004100170210A CN100423500C (zh) | 2004-03-18 | 2004-03-18 | 基于攻防和视频组播技术的网络化交互式教学实验方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2004100170210A CN100423500C (zh) | 2004-03-18 | 2004-03-18 | 基于攻防和视频组播技术的网络化交互式教学实验方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1564536A true CN1564536A (zh) | 2005-01-12 |
CN100423500C CN100423500C (zh) | 2008-10-01 |
Family
ID=34478727
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2004100170210A Expired - Fee Related CN100423500C (zh) | 2004-03-18 | 2004-03-18 | 基于攻防和视频组播技术的网络化交互式教学实验方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN100423500C (zh) |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100362796C (zh) * | 2005-11-18 | 2008-01-16 | 宁波大学 | 交互式网络语音广播系统 |
CN100492439C (zh) * | 2006-01-19 | 2009-05-27 | 山东大学 | 基于宽带互联网的电视实验远程教学系统 |
CN101841424B (zh) * | 2009-03-18 | 2012-07-04 | 中兴通讯股份有限公司 | 基于socks代理连接的ems网管系统和方法 |
CN102724596A (zh) * | 2011-03-31 | 2012-10-10 | 新奥特(北京)视频技术有限公司 | 一种远程播控方法和系统 |
CN103701810A (zh) * | 2013-12-26 | 2014-04-02 | 蓝盾信息安全技术股份有限公司 | 一种网络攻防实验的自动评分系统 |
CN104426833A (zh) * | 2013-08-19 | 2015-03-18 | 北大方正集团有限公司 | 基于udp协议实现教学通信的方法及系统 |
CN105554047A (zh) * | 2014-10-31 | 2016-05-04 | 北大方正集团有限公司 | 应用于教学的监控移动设备的方法及控制设备、移动设备 |
CN105811994A (zh) * | 2016-03-03 | 2016-07-27 | 云南大学 | 一种计算机数据压缩处理系统 |
CN107770138A (zh) * | 2016-08-22 | 2018-03-06 | 阿里巴巴集团控股有限公司 | 指定ip地址的方法及代理服务器、客户端 |
CN110286835A (zh) * | 2019-06-21 | 2019-09-27 | 济南大学 | 一种具有意图理解功能的交互式智能容器 |
CN111310201A (zh) * | 2020-01-20 | 2020-06-19 | 罗可熙 | 一种数字化实验系统及其管理控制方法和装置 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1147806C (zh) * | 2002-08-20 | 2004-04-28 | 西安交通大学 | 基于ip网的多媒体实时授课系统 |
CN1455372A (zh) * | 2003-05-29 | 2003-11-12 | 上海交通大学 | 基于ip网络的屏幕共享和同步录制方法 |
-
2004
- 2004-03-18 CN CNB2004100170210A patent/CN100423500C/zh not_active Expired - Fee Related
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100362796C (zh) * | 2005-11-18 | 2008-01-16 | 宁波大学 | 交互式网络语音广播系统 |
CN100492439C (zh) * | 2006-01-19 | 2009-05-27 | 山东大学 | 基于宽带互联网的电视实验远程教学系统 |
CN101841424B (zh) * | 2009-03-18 | 2012-07-04 | 中兴通讯股份有限公司 | 基于socks代理连接的ems网管系统和方法 |
CN102724596B (zh) * | 2011-03-31 | 2015-02-18 | 新奥特(北京)视频技术有限公司 | 一种远程播控方法和系统 |
CN102724596A (zh) * | 2011-03-31 | 2012-10-10 | 新奥特(北京)视频技术有限公司 | 一种远程播控方法和系统 |
CN104426833A (zh) * | 2013-08-19 | 2015-03-18 | 北大方正集团有限公司 | 基于udp协议实现教学通信的方法及系统 |
CN103701810A (zh) * | 2013-12-26 | 2014-04-02 | 蓝盾信息安全技术股份有限公司 | 一种网络攻防实验的自动评分系统 |
CN105554047A (zh) * | 2014-10-31 | 2016-05-04 | 北大方正集团有限公司 | 应用于教学的监控移动设备的方法及控制设备、移动设备 |
CN105811994A (zh) * | 2016-03-03 | 2016-07-27 | 云南大学 | 一种计算机数据压缩处理系统 |
CN105811994B (zh) * | 2016-03-03 | 2019-12-13 | 云南大学 | 一种计算机数据压缩处理系统 |
CN107770138A (zh) * | 2016-08-22 | 2018-03-06 | 阿里巴巴集团控股有限公司 | 指定ip地址的方法及代理服务器、客户端 |
CN107770138B (zh) * | 2016-08-22 | 2020-12-25 | 阿里巴巴集团控股有限公司 | 指定ip地址的方法及代理服务器、客户端 |
CN110286835A (zh) * | 2019-06-21 | 2019-09-27 | 济南大学 | 一种具有意图理解功能的交互式智能容器 |
CN111310201A (zh) * | 2020-01-20 | 2020-06-19 | 罗可熙 | 一种数字化实验系统及其管理控制方法和装置 |
CN111310201B (zh) * | 2020-01-20 | 2022-06-07 | 罗可熙 | 一种数字化实验系统及其管理控制方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN100423500C (zh) | 2008-10-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102741830B (zh) | 用于多媒体流的客户机侧远程呈现的系统和方法 | |
CN105306861B (zh) | 一种网络教学录播方法及系统 | |
CN101064713B (zh) | 通过电视机平台实现远程桌面的控制方法 | |
US20180247550A1 (en) | Image synchronous display method and device | |
CN101848214B (zh) | 基于rdp审计数据的任意定位回放方法及系统 | |
CN100423500C (zh) | 基于攻防和视频组播技术的网络化交互式教学实验方法 | |
TWI521939B (zh) | 用於低頻寬顯示資訊傳輸之系統及方法 | |
CN101155089A (zh) | 无线多媒体实时学习系统与方法 | |
CN1856819A (zh) | 通过分布式应用程序的图形数据的网络传输的系统和方法 | |
CN102223368B (zh) | 在远程桌面传输协议监控时实现操作识别的系统及方法 | |
CN1825826A (zh) | 基于互联网的访问和共享远程设备的系统和方法 | |
CN102668495A (zh) | 低延时传输协议的方法和系统 | |
CN1574795A (zh) | 为改进客户机服务器通信使用分组压缩缓冲器的系统和方法 | |
CN1455372A (zh) | 基于ip网络的屏幕共享和同步录制方法 | |
CN103188341B (zh) | 远程管理系统、远程管理装置及远程管理方法 | |
CN1627732A (zh) | 一种在即时通讯系统中应用程序共享的方法和系统 | |
CN101060537A (zh) | 一种通信网络仿真工具的实时视景显示平台及其实现方法 | |
CN101179660A (zh) | 摄像头视频图像处理的系统及其方法 | |
CN101452418A (zh) | 电脑管理系统与方法及其所应用的操控台 | |
CN106303569A (zh) | 一种直播视频流的传输方法、主播端设备 | |
JP2003153137A (ja) | ワイヤレスプロジェクタシステム及びその投影方法 | |
Shen | MOOC Teaching Mode of News Transmission Based on Network Audio Data Decoding Technology. | |
CN106789449A (zh) | 一种can总线开发与测试方法及系统 | |
CN1870505A (zh) | 一种嵌入式系统及其信息处理方法 | |
CN113395306A (zh) | 一种远程虚实结合的fpga实验系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20081001 Termination date: 20170318 |