一种基于无线网络的多卡路由器装置及其数据传输方法_2

文档序号:8383665阅读:来源:国知局
返回执行步骤(22)。
[0030](24)服务端复合模块判断是否该连接所在的复合通道是否为已建立的复合通道,若是,则执行步骤(26 ),若否,则执行步骤(25 )。
[0031](25)服务端复合模块建立该连接所在的复合通道,分配唯一的复合通道ID,并将该复合通道的ID返回给该复合通道对应的多卡路由器。
[0032](26)服务端复合模块依次检查每个复合通道的每个子通道。
[0033](27)服务端复合模块判断各个子通道中是否有数据,若是,则执行步骤(28),若否,则返回执行步骤(22)。
[0034](28)服务端复合模块通过服务端socket接口接收数据,将来自多卡路由器的均衡传输的数据还原成均衡发送前的数据,分离出IP头开始的数据,并采用源地址和多卡路由器的网络标识组合,设定一个唯一对应的服务端源地址的方式,建立网络地址转换表,进行网络地址转换。
[0035](29)服务端复合模块将网络地址转换完毕的IP包传送至虚拟网卡驱动模块,由虚拟网卡驱动模块模拟成从网络上收到的IP包后再发送至路由模块,路由模块根据路由配置将IP包传递给真正需要发送数据的第二物理网卡,由第二物理网卡发送至外网的第三方网络应用目标服务。
[0036]步骤(3)中,所述的解绑定服务器将外网的第三方网络应用目标服务发出的数据传递到解绑定服务器的服务端复合模块,再由服务端复合模块将该数据通过服务端socket接口及第一物理网卡均衡发送至多卡路由器的多张无线网卡中;具体包括以下步骤:
(31)解绑定服务器启动;设每一个多卡路由器的一张无线网卡和解绑定服务器建立的连接为子通道,每一个多卡路由器的全部子通道为该多卡路由器的复合通道。
[0037](32)服务端复合模块通过虚拟网卡驱动模块的数据链路层接口接收IP头开始的数据。
[0038](33)服务端复合模块判断是否有数据,若是,则执行步骤(34),若否,则返回执行步骤(32)。
[0039](34)服务端复合模块根据目的地址和网络地址转换表,将目的地址更新成对应的内网的第三方网络应用的IP,并找到对应的复合通道ID。
[0040](35)服务端复合模块根据复合通道ID找到该复合通道ID对应的全部子通道。
[0041](36)服务端复合模块采用数据均衡传输策略,选择出发送当前IP数据包的子通道,发送数据。
[0042]步骤(4)中,所述的多卡路由器的设备端复合模块,先将来自解绑定服务器的均衡传输的数据还原成均衡传输前的数据,再将该数据解包还原出IP头开始的数据,然后再由内网物理网卡及设备端网卡驱动模块将该数据发送至内网的第三方网络应用;具体包括以下步骤:
(41)多卡路由器启动;设每一个多卡路由器的一张无线网卡和解绑定服务器建立的连接为子通道,每一个多卡路由器的全部子通道为该多卡路由器的复合通道。
[0043](42)设备端复合模块依次尝试从每个无线网卡绑定的设备端socket接口中接收数据。
[0044](43)设备端复合模块判断各个子通道中是否有数据,若是,则执行步骤(44),若否,则返回执行步骤(42)。
[0045](44)设备端复合模块通过设备端socket接口接收数据,并将数据还原成解绑定服务器均衡传输前的数据,再将该数据解包还原出IP头开始的数据。
[0046](45)设备端复合模块通过内网物理网卡的数据链路层接口发送IP头开始的数据;内网物理网卡将该数据作为IP包发送给内网的第三方网络应用。
[0047]所述的数据均衡传输策略,具体为选择发送缓冲区中数据最少的子通道发送,或者在采用带重传的UDP传输数据时,选择丢包率最小的子通道发送。
[0048]由以上技术方案可知,本发明所述的基于无线网络的多卡路由器装置中的多卡路由器,能够让连接在它上面的任何一种第三方网络应用(包括视频传输类的应用)传输的数据都均衡到该多卡路由器的多张无线网卡中传输。本发明通过在有线网络上部署一台解绑定服务器,能够将多张无线网卡对应的传输通道中接收到的数据还原成均衡发送前的数据,再发送到第三方网络应用的目标服务上去;反过来,解绑定服务器从第三方网络应用的目标服务上接收数据,然后均衡发送到多卡路由器的多张无线网卡上去,多卡路由器将多张无线网卡对应的传输通道中接收到的数据还原成均衡发送前的数据,再发送到第三方网络应用上去。本发明能够显著的增加双向传输带宽,有利于第三方网络应用数据的快速稳定传输。
[0049]
【附图说明】
[0050]图1是本发明中多卡路由器装置的结构示意图;
图2是多卡路由器上行传输流程示意图;
图3是多卡路由器下行传输流程示意图;
图4是解绑定服务器上行传输流程示意图;
图5是解绑定服务器下行传输流程示意图。
[0051]其中:
1、多卡路由器,2、设备端复合模块,3、设备端网卡驱动模块,4、内网物理网卡,5、设备端socket接口,6、内网的第三方网络应用,7、无线网卡一,8、无线网卡N,9、解绑定服务器,10、第一物理网卡,11、服务端socket接口,12、服务端复合模块,13、虚拟网卡驱动模块,14、路由模块,15、服务端网卡驱动模块,16、第二物理网卡,17、外网的第三方网络应用目标服务。
[0052]
【具体实施方式】
[0053]下面结合附图对本发明做进一步说明:
如图1所示的一种基于无线网络的多卡路由器装置,包括解绑定服务器9和若干个多卡路由器I。所述的解绑定服务器9部署在带宽较好的有线网络中,若干个多卡路由器I分别与解绑定服务器9无线连接;每一个多卡路由器I具有可设置的唯一的网络标识。
[0054]所述的多卡路由器I包括内网物理网卡4、设备端网卡驱动模块3、设备端复合模块2、设备端socket接口 5和多张无线网卡7和8 (无线网卡1、.....无线网卡N)。所述的解绑定服务器9包括第一物理网卡10、服务端socket接口 11、服务端复合模块12、虚拟网卡驱动模块13、路由模块14、服务端网卡驱动模块15和第二物理网卡16。
[0055]所述的设备端复合模块2,负责将内网物理网卡4的IP包和设备端socket接口 5的数据包之间进行转换。所述的设备端网卡驱动模块3,是操作系统的标准模块。所述的内网物理网卡4,用于和内网的第三方网络应用进行双向数据传输。所述的设备端socket接口 5,是操作系统的标准模块。图1中的6是内网的第三方网络应用,内网中允许多个不同的第三方网络应用同时连网。所述的无线网卡,可以是3G/4G的不同制式的无线网卡。本发明所属的多卡路由器装置支持绑定多个无线网卡上网。
[0056]所述的解绑定服务器的第一物理网卡10,用于接收多卡路由器I的多张无线网卡的连接。所述的服务端socket接口 11,是操作系统的标准模块。所述的服务端复合模块12,用于在虚拟网卡驱动模块13的IP包和服务端socket接口 11的数据包之间进行转换,还用于完成网络地址转换。所述的虚拟网卡驱动模块13,该模块和路由模块14之间的接口就是标准的网卡驱动接口,该模块和服务端复合模块12之间的接口允许以IP包的格式进行双向的数据传送。所述的路由模块14是操作系统的标准模块,通过事先对路由模块的合适配置,可以将IP包在第二物理网卡16和虚拟网卡驱动模块13间正确路由。所述的服务端网卡驱动15是操作系统的标准模块。所述的第二物理网卡16,用于解绑定服务器9和外网的第三方网络应用目标服务17之间传送数据,在实际设备中,可以和第一物理网卡10是一张网卡。图1中的17是外网的第三方网络应用目标服务,一台解绑定服务器9可以同时支持多个第三方网络应用目标服务17。
[0057]对于上述基于无线网络的多卡路由器装置的数据传输方法,为了便于描述,设定从内网的第三方网络应用向外网的第三方网络应用目标服务传送数据称为上行传输流程,反之为下行传输流程。每一个路由器的一张无线网卡和解绑定服务器建立的连接称为子通道,每一个路由器的全部子通道称为该路由器的复合通道。
[0058]整个数据传输流程主要分为4个,包括:多卡路由器上行传输流程、多卡路由器下行传输流程、解绑定服务器上行传输流程、解绑定服务器下行产生流程。这些流程都是并发工作的,并且相互耦合,下面分别予以描述:
图2是多卡路由器上行传输流程,该流程主要是将内网的第三方网络应用发出的数据传递到解绑定服务的复合模块,具体包含以下步骤:
步骤101,多卡路由器设备启动。
[0059]步骤102,设备端复合模块通过内网物理网卡的数据链路层接口接收IP头开始的数据。由于要完整地接收IP包,因此不能通过通常的socket接口完成,必须直接访问设备端网卡驱动模块。
[0060]步骤103,设备端复合模块判断是否有数据,若是,则执行步骤104,若否,则返回执行步骤102。
[0061]步骤104,设备端复合模块判断是否建立了复
当前第2页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1