基于网络的虚拟实验平台—VLP2P通信库的设计与实现
以下是资料介绍,如需要完整的请充值下载.
1.无需注册登录,支付后按照提示操作即可获取该资料.
2.资料以网页介绍的为准,下载后不会有水印.资料仅供学习参考之用.
密 惠 保
1.无需注册登录,支付后按照提示操作即可获取该资料.
2.资料以网页介绍的为准,下载后不会有水印.资料仅供学习参考之用.
密 惠 保
资料介绍:
摘? 要
随着信息技术的发展,网络无疑为我们带了更多的便利,因此一个好的系统要具有网络功能。针对虚拟实验台系统的实际功能,采用P2P技术作为其网络通讯基础具有很大的优势:降低服务器资源占用,提高通讯传输效率。但由于NAT的广泛使用,使得不同的内网间系统通讯比较困难。希望P2P通讯具有实用价值,穿透NAT实现不同内网间的系统通讯是一个需要解决的重要问题。
在基于网络的虚拟实验平台中,有很多功能涉及到网络通讯,为了提高系统的模块化程度,减少系统重复开发量,将网络通信部分独立出来,设计实现名为VLP2P的P2P通讯库。设计中,也设计了通讯库的测试程序。经实际测试,基本达到预期设计目标。
关键词:虚拟实验平台;P2P技术;UDP;穿透NAT;Scoket编程
1??
引言
Internet进行访问。NAT技术可以为TCP、UDP以及ICMP的部分信息进行透明中继。NAT技术具体实现方法是通过IP地址映射来实现IP地址的复用。NAT网关充当了路由器的角色,所有外出的网络包都必须路由到NAT网关;同样,所有由外网发往内网的网络包也必须经过NAT网关。NAT网关通过一定的规则,将由内部网向外部网发送的数据包中的源地址映射为一个Internet合法地址,而将由外向内的数据包中的目的地址替换成相应的内网IP地址。NAT网关有内网接口和外网接口,其中外网接口和Internet相连,必须拥有合法IP地址,内网接口则和内网相连,可以分配任意指定的一个内网IP地址,一般情况下,这个IP地址就是内部主机的默认网关。
1.1.?
项目背景
随着信息技术的发展,网络无疑为我们带了更多的便利,因此一个好的系统必须要具有网络功能,这个功能不仅局域网,那就存在一个穿透NAT的问题,伴随着P2P技术的出现,利用UDP实现P2P网络穿越NAT的即时通讯技术,我们不在为此而烦恼。
1.2.? 项目介绍
1.2.1???
虚拟实验平台
虚拟实验平台是通过软件编程仿真各种电子器件,可以做各种电路实验及设计性实验、
基本电路实验、 直流电路、 交流电路、 动态电路、 这些功能模块成为虚拟平台与实验者之间的桥梁, 共同构成网上虚拟实验室系统,起到帮助学生完成实验任务。
1.2.2???
平台网络通信
实现虚拟实验平台具有网络基本功能,实现虚拟实验平台具有网络基本功能,客户机和主机,客户机和客户机之间的即时通讯、文件的传输。由于采用了最新的P2P穿透NAT的技术,因此可以实现冲破局域网的限制,实现真正的异地连接,同学可以在家里利用一台普通的能够上网的PC,就能把老师布置的实验作业完成,并且,老师可以通过服务器端,了解进度情况,并且可以适时的指导其实验。
1.3.? 项目要求
1.3.1???
功能要求
实现虚拟实验平台具有网络基本功能,客户机和主机,客户机和客户机之间的即时通讯、文件的传输。
1.3.2???
B/S与 C/S
目前的软件系统体系结构一般分为两种形式,一种为大家所熟识的C/S 结构,另一种为B/S 结构。C/S 结构,即Client/Server(客户端/服务器)结构,通过将任务合理分配到Client 端和Server 端,降低了系统的通讯开销,可以充分利用两端硬件环境的优势。B/S 结构,即Browse /Server(浏览器/服务器)结构,就是只安装维护一个服务器,而客户端采用浏览器运行软件,进行浏览、访问、操作数据。最初的管理信息系统基本上是采用C/S 模式开发的,但随着WWW 的广泛应用,目前的管理信息系统已经逐渐开始从C/S 模式向浏览器/服务器B/S 模式转变。B/S 结构的软件所有的维护、升级工作都只在服务器上进行,而客户端能立刻获得最新版本的软件。
1.3.3???
通信协议的选择
主机与客户机之间采用TCP协议,保证其可靠性。
客户机之间采用UDP非连接,不可靠的通讯协议,相对于tcp来说,虽然可靠性不及,但传输效率较高。对于即时通信的系统,选择UDP,就是要保证较高的传输效率。
1.4.? 项目难点及解决方法
1.4.1??? IP处理问题?
由于涉及到各种局域网,因此需要处理各种私有IP的访问问题。
解决方法:采用NAT技术实现私有地址转换成公共有效的地址。
1.4.2???
Client之间的通信问题
解决方法:利用服务器的打洞原理(后详)