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

文档序号:8383665阅读:来源:国知局
合通道,若是,则执行步骤107,若否执行步骤105。
[0062]步骤105,建立复合通道,获取唯一复合通道ID。复合通道ID的获取方式主要有以下两种:
(O由解绑定服务器分配,并通过建立复合通道的响应报文返回给设备。
[0063](2)部署系统时预先分配好。
[0064]但在实际应用中,具体采用的方式不限于以上几种,只要保证复合通道ID在解绑定服务器服务的所有多卡路由器中保持唯一即可。
[0065]步骤106,每个无线网卡都和解绑定服务建立起子通道。子通道通过设备端socket接口传输数据。建立连接的交互信令中,应该有表明该连接属于哪个复合通道的标识,该标识可以就是复合通道ID,也可以是和复合通道ID唯一对应的标识。
[0066]步骤107,根据数据均衡传输策略选择一个子通道,打包发送该数据。数据均衡传输策略具体有以下两种:
(I)选择发送缓冲区中数据最少的子通道发送。
[0067](2)如果采用带重传的UDP传输数据,可选择丢包率最小的子通道发送。
[0068]但在实际应用中,具体采用的方式不限于以上几种,只要能够实现将要传送的数据均衡到各个子通道中发送即可。
[0069]步骤108,判断是否需要关闭复合通道,若是,则执行步骤109,若否,则返回执行步骤102。判断是否该关闭复合通道的准则有以下两种方式:
(1)当没有任何内网的第三方网络应用连接到多卡路由器时,则关闭复合通道,这样的准则对数据传输的延时影响较小;
(2)当超过一定的时间,在任何子通道上都没有数据传输时,则关闭复合通道,这样的准则对无线网络的承载压力较小。
[0070]但在实际应用中,具体采用的准则不限于以上几种,核心是根据实际着重考虑的因素,选取合适的准则。
[0071]步骤109,关闭无线网卡的子通道
图3是多卡路由器下行传输流程,该流程主要是将解绑定服务的复合模块发出的数据传递到内网的第三方网络应用,具体包含以下步骤:
步骤201,设备启动。
[0072]步骤202,依次尝试从每个无线网卡绑定的socket中接收数据。
[0073]步骤203,判断是否有数据,若是,则执行步骤204,若否,则返回执行步骤202。
[0074]步骤204,将该数据解包还原出IP头开始的数据。
[0075]步骤205,通过内网物理网卡的数据链路层接口发送IP头开始的数据;物理网卡会将该数据作为IP包发送给内网的第三方网络应用。
[0076]图4是解绑定服务器上行传输流程,该流程主要是解绑定服务的复合模块通过socket接口接收数据,通过虚拟网卡驱动发出的数据,传递到外网的第三方网络应用目标服务,具体包含以下步骤:
步骤301,服务启动。
[0077]步骤302,监听特定端口等待无线网卡来的连接。
[0078]步骤303,判断是否有连接进来,若是,则执行步骤304,若否,则返回执行步骤302。
[0079]步骤304,判断是否是已建的复合通道,若是,则执行步骤306,若否,则执行步骤305。由于建立复合通道和建立子通道是不同的作用,因此应在信令设计时体现出区别。
[0080]步骤305,建立复合通道,分配唯一的复合通道ID并返回给设备。由于同一时间可以有多个多卡路由器连接到解绑定服务器上,建立复合通道的过程中一般需要进行认证,每一个多卡路由器分配一个接入帐号和接入密码。如果不在乎安全性,则可以省去密码验证。至于分配复合通道ID的策略可以参考步骤105。
[0081]步骤306,依次检查每个复合通道的子通道。
[0082]步骤307,判断是否有数据,若是,则执行步骤308,若否,则返回执行步骤302 ; 步骤308,分离出IP头开始的数据,将源地址进行网络地址转换。转换的方法是在内存中记录复合通道ID和源地址的组合,唯一对应一个源地址,当出现新的复合通道ID和源地址的组合时,就产生一个新的源地址并记入内存,当遇到已有的复合通道ID和源地址的组合时,则直接使用唯一对应的那个源地址。通过引入复合通道ID就可以防止两个多卡路由器内网的第三方应用的来源地址相同时,会造成混淆的问题。
[0083]步骤309,将IP包传入虚拟网卡驱动模块,模拟成从网络上收到的IP包。虚拟网卡驱动收到IP包后,会传入操作系统自身的路由模块,通过事先对路由模块的合适配置,路由模块会将IP包传递给真正需要发送数据的物理网卡,然后再发送给第三方网络应用目标服务。
[0084]图5是解绑定服务器下行传输流程,该流程主要是将外网的第三方网络应用目标服务发出的数据传递到服务端复合模块,再通过socket连接传递到多卡路由器,具体包含以下步骤:
步骤401,服务启动。
[0085]步骤402,通过虚拟网卡的数据链路层接口接收IP头开始的数据。
[0086]步骤403,判断是否有数据,若是,则执行步骤404,若否,则返回执行步骤402。
[0087]步骤404,根据目的地址查网络地址转换表,更新成对应的内网的第三方网络应用的IP,并找到对应的复合通道ID。这些数据是操作系统的路由模块路由过来的,目的地址是步骤308中分配的地址。在网络地址转换表中,找到对应的复合通道ID,然后将记录的内网的第三方网络应用的IP作为新的目标地址。
[0088]步骤405,根据复合通道ID找到所有的子通道。
[0089]步骤406,根据数据传输均衡策略选择出发送当前IP数据包的socket连接,发送数据。数据传输均衡策略和步骤107相同。
[0090]以上所述的实施例仅仅是对本发明的优选实施方式进行描述,并非对本发明的范围进行限定,在不脱离本发明设计精神的前提下,本领域普通技术人员对本发明的技术方案作出的各种变形和改进,均应落入本发明权利要求书确定的保护范围内。
【主权项】
1.一种基于无线网络的多卡路由器装置,其特征在于:包括解绑定服务器和若干个多卡路由器,所述的解绑定服务器部署在有线网络中,若干个多卡路由器分别与解绑定服务器无线连接;每一个多卡路由器具有可设置的唯一的网络标识; 所述的多卡路由器包括内网物理网卡、设备端网卡驱动模块、设备端复合模块、设备端socket接口和多张无线网卡;所述的解绑定服务器包括第一物理网卡、服务端socket接口、服务端复合模块、虚拟网卡驱动模块、路由模块、服务端网卡驱动模块和第二物理网卡; 所述的内网物理网卡,用于多卡路由器和内网的第三方网络应用进行双向数据传输;所述的设备端网卡驱动模块,用于内网物理网卡和设备端复合模块之间的数据及控制交互;所述的设备端复合模块,用于通过内网物理网卡及设备端网卡驱动模块接收来自内网的第三方网络应用的IP头开始的数据,并将该数据通过设备端socket接口均衡到多张无线网卡与第一物理网卡建立的多个无线子通道中进行发送;所述的设备端复合模块,还用于先接收在多张无线网卡及多张无线网卡绑定的设备端socket接口中均衡传输的来自绑定服务器的数据,并将数据还原成均衡发送前的数据,再将该数据解包还原出IP头开始的数据,然后再通过内网物理网卡及设备端网卡驱动模块将该数据发送至内网的第三方网络应用;所述的设备端socket接口,用于设备端复合模块和无线网卡之间的数据及控制交互;所述的无线网卡,为3G/4G的不同制式的无线网卡,用于采用无线信号在多卡路由器和解绑定服务器之间进行数据传输; 所述的第一物理网卡,用于接收无线网卡的连接;所述的服务端socket接口,用于第一物理网卡和服务端复合模块之间的数据及控制交互;所述的服务端复合模块,用于先通过服务端socket接口及第一物理网卡接收在多卡路由器的多张无线网卡与第一物理网卡建立的多个无线子通道中均衡传输的数据,并将数据还原成均衡传输前的数据,再分离出IP头开始的数据,并采用源地址和多卡路由器的网络标识组合,设定一个唯一对应的服务端源地址的方式,建立网络地址转换表,进行网络地址转换,然后将IP包传送至虚拟网卡驱动模块,由虚拟网卡驱动模块模拟成从网络上收到的IP包后传输至路由模块,再由路由模块传递给真正需要发送数据的第二物理网卡,最后由第二物理网卡发送至第三方网络应用目标服务;所述的服务端复合模块,还用于先通过虚拟网卡驱动模块的数据链路层接口接收来自外网的第三方网络应用目标服务的IP头开始的数据,再利用网络地址转换表将目的地址更新成对应的内网的第三方网络应用的IP,并找到对应的多卡路由器的网络标识,最后通过第一物理网卡和服务端socket接口将数据均衡发送至多卡路由器的多张无线网卡与第一物理网卡建立的多个无线子通道中进行传输;所述的虚拟网卡驱动模块,用于服务端复合模块和路由模块之间的数据及控制交互;所述的路由模块,用于将IP包在第二物理网卡和虚拟网卡驱动模块之间正确路由;所述的服务端网卡驱动模块,用于路由模块和第二物理网卡之间的数据及控制交互;所述的第二物理网卡,用于解绑定服务器和外网的第三方网络应用目标服务之间传输数据。
2.
当前第3页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1