虚拟网络装置及其通信方法制造方法及图纸

技术编号:2884389 阅读:177 留言:0更新日期:2012-04-11 18:40
本发明专利技术涉及一种虚拟网络装置,包括:虚拟网络协议层;包含虚拟网卡编号记录、虚拟网卡发送缓冲区、虚拟网卡接收缓冲区、虚拟网卡发送状态标志和虚拟网卡接收状态标志的虚拟网卡;虚拟网卡驱动器;虚拟网线装置,网络应用程序的数据经协议层打包成数据包后暂存于发送缓冲区,然后送往目的终端的虚拟网卡的接收缓冲区中,由虚拟网卡驱动器读取后经协议层传送给网络应用程序。本发明专利技术还提供一种虚拟网络通信方法。(*该技术在2019年保护过期,可自由使用*)

【技术实现步骤摘要】
【国外来华专利技术】
本专利技术涉及一种虚拟网络装置及其方法。通常,一台计算机在运行Windows 95/98操作系统时,只能由一个用户使用。在这种情况下,计算机的软硬件资源就只能为单个用户所独占,不能发挥其最佳效能。因此,一种基于Windows95/98操作平台的由一台计算机连接多个用户终端的系统应运而生,一般称之为一机多用户系统。如附图说明图1所示,这类一机多用户系统的一个终端是由多用户适配卡11、终端控制盒12、连接电缆13、键盘14、鼠标15及显示器16组成,多用户适配卡11插在计算机10的PCI插槽上,通过连接电缆13连接到终端控制盒12上,终端控制盒12上接驳了键盘14、鼠标15和显示器,组成一个用户终端。用户可使用此终端分享计算机10的CPU、硬盘等硬件设备,执行Windows 95/98操作及各种应用程序,就象每个用户拥有一台独立的计算机一样。由于在这种一机多用户系统中,每个终端用户其实使用的都是同一台计算机,因此,在终端间没有网络设备把各个终端连接成网络,在各种终端之间也就没有网络通信的功能,终端用户无法使用在网络方面的各种应用。因此,本专利技术的目的在于提供一种虚拟网络装置,它可应用于上述的一机多用户系统,在这类一机多用户系统中的各个终端之间架设一虚拟的局域网,使各个用户终端之间具备网络通信的功能。终端用户可以凭借虚拟局域网络进行各种网络应用。根据本专利技术的上述目的,本专利技术提供一种虚拟网络装置,包括虚拟网络协议层,用于实现网络协议(包括TCP/IP协议和IPX/SPX协议),将从上层应用程序接收到的数据按网络协议转换成数据包,将从下层接收到的数据包转换成数据传送给上层应用程序;虚拟网卡,包含下列数据记录虚拟网卡编号记录,记录所述虚拟网卡编号;虚拟网卡发送缓冲区,暂存将要从所述虚拟网卡发送出去的数据;虚拟网卡接收缓冲区,暂存所述虚拟网卡接收到的数据;虚拟网卡发送状态标志,记录所述虚拟网卡的发送状态(包括发送缓冲区上无数据的发送空闲和发送缓冲区被占用的发送忙);虚拟网卡接收状态标志,记录所述虚拟网卡的接收状态(包括同上)虚拟网卡驱动器,根据网络驱动接口规范向上连接所述虚拟网络协议层,并与所述虚拟网卡相连,从所述虚拟网络协议层接收数据包,传送到所述虚拟网卡的发送缓冲区中,并将所述虚拟网卡发送状态标志设置为发送忙,从所述虚拟网卡的虚拟网卡接收缓冲区读取数据包,并传送给上层的所述虚拟网络协议层;虚拟网线装置,连接不同用户终端的虚拟网卡,所述数据包包含有表示数据要发送的目的虚拟网卡的虚拟网卡编号,所述虚拟网卡驱动器根据所述数据包中的所述虚拟网卡编号,通过所述虚拟网线装置将一个用户终端内的虚拟网卡发送缓冲区中的数据传送给另一个用户终端内的虚拟网卡接收缓冲区。本专利技术提供的虚拟网络通信方法,包含下列步骤(1)源用户终端的虚拟网络协议层根据网络协议从上层应用程序接收数据,并把所述数据转换成包含目的用户终端的虚拟网卡编号的数据包;(2)虚拟网卡驱动器从所述虚拟网络协议层接收所述数据包,在虚拟网卡发送状态标志为发送空闲时,将所述数据包写入到虚拟网卡发送缓冲区;(3)将虚拟网卡发送状态标志设置为发送忙;(4)源用户终端的虚拟网卡驱动器根据包含在所述数据包中的目的用户终端的虚拟网卡编号通过虚拟网线装置向目的用户终端的虚拟网卡驱动器发送接收指令;(5)目的用户终端的虚拟网卡驱动器接收到所述接收指令后,当其虚拟网卡接收状态标志为接收空闲时,将所述数据包从源用户终端的虚拟网卡发送缓冲区转移到其上的虚拟网卡接收缓冲区;(6)目的用户终端的虚拟网卡驱动器把其的虚拟网卡接收状态标志设置为接收忙,把源用户终端的虚拟网卡发送状态标志设置为发送空闲;(7)目的用户终端的虚拟网卡驱动器通知其虚拟网络协议层读取数据包;(8)目的用户终端的虚拟网卡协议层从其虚拟网卡接收缓冲区读取数据包,并转换成数据传送给上层应用程序;(9)将目的用户终端的虚拟网卡接收状态标志设置为接收空闲。如上所述,本专利技术为一机多用户系统提供了一种虚拟网络装置以及在这种一机多用户系统中进行网络通信的方法,使这种一机多用户系统能够进行局域网络通信。下面结合附图详细描述本专利技术。附图中图1是一机多用户系统的结构示意图;图2是本专利技术的虚拟网络装置的功能框图;图3和图4示出了本专利技术的网络通信方法的流程图,其中图3为源用户终端发送数据的流程图;图4是目的用户终端接收数据的流程图。如图2所示,图2的左部示出了一个用户终端内的虚拟网络装置的框图。一机多用户系统中的每个用户终端内都有这样一组结构。为了便于说明一机多用户系统中各个用户之间的通信情况,在图2中示出了两个用户终端内的虚拟网络装置,其中左部为发送数据的源用户终端5,右部为接收数据的目的用户终端6。用户终端5中的虚拟网络装置包括有虚拟网络协议层51、虚拟网卡驱动器52和虚拟网卡53组成。虚拟网络协议层51执行网络协议,网络协议可以包括TCP/IP协议(传输控制协议和互联网协议)和IPX协议(网间消息传递协议)/SPX(顺序包交换协议)。在Windows 95/98操作系统中已包含了这些协议,因此,虚拟网络协议层51就利用Windows 95/98操作系统中的协议元件。如图2所示,在虚拟网络协议层51上层连接有网络应用程序50。这种应用程序可以是各种能在Windows 95/98上运行的网络软件。网络应用程序利用本专利技术提供的虚拟网络装置进行网络通信。在传送数据时,网络应用程序50把要传输的数据先传送给虚拟网络协议层51,由虚拟网络协议层51根据网络协议把数据转换成数据包。在接收数据时,虚拟网络协议层51把从其它用户终端传输来的数据包先根据网络协议转换成数据,再传送给上层网络应用程序50。虚拟网卡驱动52根据网络驱动接口规范向上与虚拟网络协议层51连接,其下层连接虚拟网卡53。虚拟网卡53实际上是一组数据记录,包括有虚拟网卡编号记录53a,记录虚拟网卡编号,每个虚拟网卡都具有一个独一无二的编号,以便系统识别;虚拟网卡发送缓冲区53b,暂存要发送出去的数据;虚拟网卡接收缓冲区53c,暂存接收到的数据;虚拟网卡发送状态标志53d,记录虚拟网卡53的发送状态。如果虚拟网卡发送缓冲区53b中有要发送的数据,则该标志被设置为“发送忙”;如果虚拟网卡发送缓冲区53b中没有数据,或者数据已被发送,则该标志被设置为“发送空闲”;虚拟网卡接收状态标志53e,记录虚拟网卡53的接收状态。如果虚拟网卡接收缓冲区53c中有接收到的数据,则该标志被设置为“接收忙”;如果虚拟网卡接收缓冲区53b中没有数据,或者数据已被传送到上层的应用程序,则该标志被设置为“接收空闲”。虚拟网卡驱动器52从虚拟网络协议层51接收数据包,传送到虚拟网卡53的发送缓冲区53b中,并将虚拟网卡发送状态标志53d设置为发送忙,从虚拟网卡3的虚拟网卡接收缓冲区53c读取数据包,并传送给上层的虚拟网络协议层51。图2右部的目的用户终端中的虚拟网络装置与左部的源用户终端中的虚拟网络装置一样包括虚拟网络协议层61、虚拟网卡驱动器62和虚拟网卡63,虚拟网卡63出包括下列数据记录虚拟网卡编号记录63a;虚拟网卡发送缓冲区63b;虚拟网卡接收缓冲区63c;虚拟网卡发送状态标志63d和虚拟网卡接收状态标本文档来自技高网...

【技术保护点】
一种虚拟网络装置,其特征在于,包括:虚拟网络协议层,用于实现网络协议,将从上层应用程序接收到的数据按网络协议转换成数据包,将从下层接收到的数据包转换成数据传送给上层应用程序;虚拟网卡,包含下列数据记录:虚拟网卡编号记录,记录所述 虚拟网卡编号;虚拟网卡发送缓冲区,暂存将要从所述虚拟网卡发送出去的数据;虚拟网卡接收缓冲区,暂存所述虚拟网卡接收到的数据;虚拟网卡发送状态标志,记录所述虚拟网卡的发送状态;虚拟网卡接收状态标志,记录所述虚拟网卡的接收状态; 虚拟网卡驱动器,根据网络驱动接口规范向上连接所述虚拟网络协议层,并与所述虚拟网卡相连,从所述虚拟网络协议层接收数据包,传送到所述虚拟网卡的发送缓冲区中,并将所述虚拟网卡发送状态标志设置为发送忙,从所述虚拟网卡的虚拟网卡接收缓冲区读取数据包,并传送给上层的所述虚拟网络协议层;虚拟网线装置,连接不同用户终端的虚拟网卡,所述数据包包含有表示数据要发送的目的虚拟网卡的虚拟网卡编号,所述虚拟网卡驱动器根据所述数据包中的所述虚拟网卡编号,通过所述虚拟网线装置将一个用户终端内的虚拟网 卡发送缓冲区中的数据传送给另一个用户终端内的虚拟网卡接收缓冲区。...

【技术特征摘要】
【国外来华专利技术】

【专利技术属性】
技术研发人员:周梓铭邱全成
申请(专利权)人:英业达集团上海电子技术有限公司
类型:发明
国别省市:31[中国|上海]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1