本发明涉及信号处理,特别是涉及一种无线网卡与有线网卡中继桥接透传方法和系统。
背景技术:
1、嵌入式linux联网设备,通常需要将有线的以太网rj-45与wifi无线网卡数据以桥接的方式进行数据传输。wifi通常有ap与sta(client)模式,ap模式下wifi通过linux内核bridge模块将wifi与有线eth网卡绑定到网桥设备br0实现数据互通,sta模式下网卡没有足够多的信息做桥接,这是802.11规定的,所以wifi网卡需要开启4addr功能才能加入到网桥,接入的ap也需要启动4addr模式,数据传输才能正常,linux系统嵌入式设备都是通过内核网桥功能模式实现无线与有线数据互联互通。在wifi为sta模式下需要开启4ddr模式,不同厂家会出现是否开启4addr功能出现不兼容问题,市场现有部分wifi网卡驱动不是按照linux系统无线网络子系统协议实现的,这样还会出现wifi网卡不支持桥接功能进而不能实现无线与有线中继。
2、linux网桥是在数据链路层实现,对wifi驱动是否遵循的内核的网络协议栈以及wifi的工作模式有明显的限制,无线桥接需要wifi驱动按照内核802.11无线子系统框架进行实现,wifi在station模式下需要开启4-address即是802.11包头里4个mac地址字段,所以linux无线桥接对wifi网卡驱动有标准的流程与规定,对一些非标准实现的wifi网卡不能很好的兼容,在不同平台实现网卡桥接功能的可移植性较差。
技术实现思路
1、基于此,有必要针对上述技术问题,提供一种无线网卡与有线网卡中继桥接透传方法和系统。
2、一种无线网卡与有线网卡中继桥接透传方法,所述方法包括:
3、将内核空间中的无线网卡接口和有线网卡接口分别与用户空间中的socket api接口连接;
4、通过socket api接口持续获取无线网卡和有线网卡发送的数据包,将数据包发送至用户空间中的数据处理模块;
5、通过数据处理模块对当前接收的数据包进行包地址映射处理,根据处理结果进行转发判断,将转发判断结果和处理后的数据包发送至socket api接口,通过socket api接口根据转发判断结果将处理后的数据包发送至对应的网卡。
6、一种无线网卡与有线网卡中继桥接透传系统,所述系统包括:数据链路层和应用层,数据链路层包括无线网卡接口和有线网卡接口,应用层包括socket api接口和数据处理模块;
7、所述socket api接口分别与无线网卡接口和有线网卡接口连接,用于持续获取无线网卡和有线网卡发送的数据包,将数据包发送至数据处理模块,以及用于从数据处理模块获取转发判断结果和进行包地址映射处理的数据包,根据转发判断结果将处理后的数据包发送至对应的网卡;
8、数据处理模块用于对当前接收的数据包进行包地址映射处理,根据处理结果进行转发判断,将转发判断结果和处理后的数据包发送至socket api接口
9、上述无线网卡与有线网卡中继桥接透传方法和系统,通过将内核空间中的无线网卡接口和有线网卡接口分别与用户空间中的socket api接口连接,从而在应用层通过socket api函数接口实现网卡桥接透传功能,通过socket api接口持续获取无线网卡和有线网卡发送的数据包,将数据包发送至用户空间中的数据处理模块,通过数据处理模块对当前接收的数据包进行包地址映射处理,根据处理结果进行转发判断,将转发判断结果和处理后的数据包发送至socket api接口,通过socket api接口根据转发判断结果将处理后的数据包发送至对应的网卡。本发明实施例,不依赖于wifi网卡驱动框架,提高应用的灵活性,支持任意的网卡桥接透传功能。
1.一种无线网卡与有线网卡中继桥接透传方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述将内核空间中的无线网卡接口和有线网卡接口分别与用户空间中的socket api接口连接包括:
3.根据权利要求1所述的方法,其特征在于,所述对当前接收的数据包进行包地址映射处理包括:
4.根据权利要求3所述的方法,其特征在于,对tcp/ip包进行地址映射修改之后,还包括:
5.根据权利要求1或3任一项所述的方法,其特征在于,根据处理结果进行转发判断包括:
6.一种无线网卡与有线网卡中继桥接透传系统,其特征在于,所述系统包括数据链路层和应用层,数据链路层包括无线网卡接口和有线网卡接口,应用层包括socket api接口和数据处理模块;
7.根据权利要求6所述的系统,其特征在于,所述socket api接口分别与无线网卡接口和有线网卡接口连接包括:
8.根据权利要求6所述的系统,其特征在于,所述对当前接收的数据包进行包地址映射处理包括:
9.根据权利要求8所述的系统,其特征在于,对tcp/ip包进行地址映射修改之后,还包括:
10.根据权利要求6或8任一项所述的系统,其特征在于,根据处理结果进行转发判断包括: