发明内容
为此,本发明的一个实施例提出一种WiFi热点的信道选择方法,解决用户通过WiFi连接热点上网体验差的问题。
根据本发明一实施例的WiFi热点的信道选择方法,包括:
根据获取的设置信息生成对应的热点服务配置文件,所述热点服务配置文件包括工作频段配置项、ACS算法选择配置项和信道扫描次数配置项;
根据所述ACS算法选择配置项和所述信道扫描次数配置项对所述工作频段配置项对应的工作频段下的所有可支持信道进行扫描,以获得目标信道。
根据本发明实施例的WiFi热点的信道选择方法,首先根据用户的设置信息生成对应的热点服务配置文件,当该热点服务配置文件中包含工作频段配置项、ACS算法选择配置项和信道扫描次数配置项时,利用ACS算法对工作频段配置项对应的工作频段下的所有可支持信道进行扫描,最终获得目标信道,能够避免智能终端设备都在同一个信道下运行,防止同一信道使用设备过多而导致的设备间信号互相干扰,从而有效解决通过WiFi连接热点上网体验差的问题。
另外,根据本发明上述实施例的WiFi热点的信道选择方法,还可以具有如下附加的技术特征:
进一步地,在本发明的一个实施例中,所述根据所述ACS算法选择配置项和所述信道扫描次数配置项对所述工作频段配置项对应的工作频段下的所有可支持信道进行扫描,以获得目标信道的步骤包括:
根据所述信道扫描次数配置项获取目标扫描次数;
对所述工作频段配置项对应的工作频段下的所有可支持信道中的每个信道进行所述目标扫描次数的扫描;
获取每次扫描时的干扰系数;
计算所述工作频段配置项对应的工作频段下的所有可支持信道中的每个信道的干扰系数平均值;
将所有所述干扰系数平均值中最小的干扰系数平均值对应的信道作为所述目标信道。
进一步地,在本发明的一个实施例中,当所述工作频段配置项为hw_mode=g,所述ACS算法选择配置项为channel=acs_survey,所述信道扫描次数配置项为acs_num_scans=n(n为大于等于1的自然数)时,对2.4G频段下的所有可支持信道中的每个信道扫描n次;
获取每次扫描时的干扰系数;
计算2.4G频段下的所有可支持信道中的每个信道的干扰系数平均值,并将最小干扰系数平均值对应的信道作为所述目标信道。
进一步地,在本发明的一个实施例中,当所述工作频段配置项为hw_mode=any,所述ACS算法选择配置项为channel=acs_survey,所述信道扫描次数配置项为acs_num_scans=n(n为大于等于1的自然数)时,对2.4G频段和5.8G频段下的所有可支持信道中的每个信道扫描n次;
获取每次扫描时的干扰系数;
计算2.4G频段和5.8G频段下的所有可支持信道中的每个信道的干扰系数平均值,并将最小干扰系数平均值对应的信道作为所述目标信道。
进一步地,在本发明的一个实施例中,所述方法还包括:
根据生成的所述热点服务配置文件启动相应功能的热点服务和分配IP地址的DHCP服务,其中,所述热点服务在编译时打开CONFIG_ACS=y配置项。
本发明的另一个实施例提出一种WiFi热点的信道选择系统,解决用户通过WiFi连接热点上网体验差的问题。
根据本发明实施例的WiFi热点的信道选择系统,包括:
配置文件生成模块,用于根据获取的设置信息生成对应的热点服务配置文件,所述热点服务配置文件包括工作频段配置项、ACS算法选择配置项和信道扫描次数配置项;
信道扫描模块,用于根据所述ACS算法选择配置项和所述信道扫描次数配置项对所述工作频段配置项对应的工作频段下的所有可支持信道进行扫描,以获得目标信道。
另外,根据本发明上述实施例的WiFi热点的信道选择系统,还可以具有如下附加的技术特征:
进一步地,在本发明的一个实施例中,所述信道扫描模块具体用于:
根据所述信道扫描次数配置项获取目标扫描次数;
对所述工作频段配置项对应的工作频段下的所有可支持信道中的每个信道进行所述目标扫描次数的扫描;
获取每次扫描时的干扰系数;
计算所述工作频段配置项对应的工作频段下的所有可支持信道中的每个信道的干扰系数平均值;
将所有所述干扰系数平均值中最小的干扰系数平均值对应的信道作为所述目标信道。
进一步地,在本发明的一个实施例中,所述信道扫描模块具体用于:
当所述工作频段配置项为hw_mode=g,所述ACS算法选择配置项为channel=acs_survey,所述信道扫描次数配置项为acs_num_scans=n(n为大于等于1的自然数)时,对2.4G频段下的所有可支持信道中的每个信道扫描n次;
获取每次扫描时的干扰系数;
计算2.4G频段下的所有可支持信道中的每个信道的干扰系数平均值,并将最小干扰系数平均值对应的信道作为所述目标信道。
进一步地,在本发明的一个实施例中,所述信道扫描模块具体用于:
当所述工作频段配置项为hw_mode=any,所述ACS算法选择配置项为channel=acs_survey,所述信道扫描次数配置项为acs_num_scans=n(n为大于等于1的自然数)时,对2.4G频段和5.8G频段下的所有可支持信道中的每个信道扫描n次;
获取每次扫描时的干扰系数;
计算2.4G频段和5.8G频段下的所有可支持信道中的每个信道的干扰系数平均值,并将最小干扰系数平均值对应的信道作为所述目标信道。
本发明的另一个实施例还提出一种存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述方法的步骤。
本发明的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实施例了解到。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参阅图1,本发明一实施例提出的WiFi热点的信道选择方法,包括:
S101,根据获取的设置信息生成对应的热点服务配置文件,所述热点服务配置文件包括工作频段配置项、ACS算法选择配置项和信道扫描次数配置项;
在具体实施时,请参阅图2,可以在现有的WiFi热点设置界面中通过软件编程增加一些选项,其中,“工作频段”与“工作信道”是与本发明相关的设置项,当“工作信道”设置为“默认”时,“工作频段”只能选择2.4GHz或者5.8GHz;而当“工作信道”设置为“最佳”时,“工作频段”可以选择2.4GHz或者5.8GHz或者两个全选。
首先获取用户在上述设置界面中的设置信息,具体的,在上述WiFi热点设置界面设置好相应参数并点击“确定”按钮,以便根据相应值生成对应的热点服务配置文件hostapd.conf,此时会启动WiFi热点的处理流程。
当用户选择的工作信道为“最佳”信道时,然后进一步判断判断“最佳”工作信道所设置的工作频段是2.4G还是5.8G还是2.4G和5.8G;然后根据具体的设置结果生成对应的热点服务配置文件,此时的热点服务配置文件即包括工作频段配置项、ACS算法选择配置项和信道扫描次数配置项。
例如,当设置为2.4G频段“最佳”信道时,生成2.4G最佳信道配置,并保存到热点服务配置文件hostapd.conf中,此时热点服务配置文件包含hw_mode=g、channel=acs_survey和acs_num_scans=5三配置项,其中,hw_mode=g为工作频段配置项,表示工作在2.4GHz频段,channel=acs_survey为ACS算法选择配置项,表示工作的信道会根据ACS算法选择,acs_num_scans=5为信道扫描次数配置项,表示扫描的次数,可以理解的,在本发明的其它实施例中,也可以为n(n为大于等于1的自然数)次。当生成的热点服务配置文件中包含上述三个配置项时,表示此时需按照最佳的信道进行工作,具体在启动热点服务时,会先扫描2.4G频段的所有可支持信道,每个信道扫描5次,以最终确认支持的最佳2.4G信道。
S102,根据所述ACS算法选择配置项和所述信道扫描次数配置项对所述工作频段配置项对应的工作频段下的所有可支持信道进行扫描,以获得目标信道。
其中,会根据ACS算法选择配置项和信道扫描次数配置项对工作频段配置项对应的工作频段下的所有可支持信道进行扫描,以获得目标信道,即获得最佳信道,请参阅图3,通过ACS算法获得目标信道的具体实现过程如下:
S1021,根据所述信道扫描次数配置项获取目标扫描次数;
S1022,对所述工作频段配置项对应的工作频段下的所有可支持信道中的每个信道进行所述目标扫描次数的扫描;
S1023,获取每次扫描时的干扰系数;
S1024,计算所述工作频段配置项对应的工作频段下的所有可支持信道中的每个信道的干扰系数平均值;
S1025,将所有所述干扰系数平均值中最小的干扰系数平均值对应的信道作为所述目标信道。
例如,当设置为2.4G频段“最佳”信道时,此时生成的热点服务配置文件包含hw_mode=g、channel=acs_survey和acs_num_scans=5三个配置项,然后在启动热点服务时,会先扫描2.4G频段的所有可支持信道,每个信道扫描5次,获取每次扫描时的干扰系数,然后计算2.4G频段下的所有可支持信道中的每个信道的干扰系数平均值,并将最小干扰系数平均值对应的信道作为所述目标信道。
可以理解的,当用户选择的工作信道为“最佳”信道,且“最佳”工作信道所设置的工作频段是5.8G时,会生成相应的热点服务配置文件,此时的热点服务配置文件包含hw_mode=a、channel=acs_survey和acs_num_scans=5三个配置项,然后在启动热点服务时,会先扫描5.8G频段的所有可支持信道,每个信道扫描5次,获取每次扫描时的干扰系数,然后计算5.8G频段下的所有可支持信道中的每个信道的干扰系数平均值,并将最小干扰系数平均值对应的信道作为所述目标信道。
同理,当用户选择的工作信道为“最佳”信道,且“最佳”工作信道所设置的工作频段是2.4G和5.8G时,会生成相应的热点服务配置文件,此时的热点服务配置文件包含hw_mode=any、channel=acs_survey和acs_num_scans=5三个配置项,然后在启动热点服务时,会先扫描2.4G频段和5.8G频段的所有可支持信道,每个信道扫描5次,获取每次扫描时的干扰系数,然后计算2.4G频段和5.8G频段下的所有可支持信道中的每个信道的干扰系数平均值,并将最小干扰系数平均值对应的信道作为所述目标信道。
根据本发明实施例的WiFi热点的信道选择方法,首先根据用户的设置信息生成对应的热点服务配置文件,当该热点服务配置文件中包含工作频段配置项、ACS算法选择配置项和信道扫描次数配置项时,利用ACS算法对工作频段配置项对应的工作频段下的所有可支持信道进行扫描,最终获得目标信道,能够避免智能终端设备都在同一个信道下运行,防止同一信道使用设备过多而导致的设备间信号互相干扰,从而有效解决通过WiFi连接热点上网体验差的问题。
此外,作为一个具体示例,本实施例的WiFi热点的信道选择方法还包括:
根据生成的所述热点服务配置文件启动相应功能的热点服务和分配IP地址的DHCP服务,其中,所述热点服务在编译时打开CONFIG_ACS=y配置项。
其中hostapd热点服务在编译时需要打开CONFIG_ACS=y配置项,以保证能启动支持ACS自动选择信道功能的WiFi热点服务。
此外,作为一个具体示例,若用户在WiFi热点设置界面中选择的工作信道为“默认”信道,此时,会按照默认值选择信道。
例如,若接收到用户的设置参数为“默认”信道后,进一步判断到“默认”工作信道所设置的工作频段为2.4G,此时会生成2.4G默认信道配置,并保存到热点服务配置文件hostapd.conf文件中,即热点服务配置文件包含hw_mode=g和channel=6两配置项;
若接收到用户的设置参数为“默认”信道后,进一步判断到“默认”工作信道所设置的工作频段为5.8G,此时会生成5.8G默认信道配置,并保存到热点服务配置文件hostapd.conf文件,即热点服务配置文件包含hw_mode=a和channel=153两配置项。
请参阅图4,基于同一发明构思,本发明另一实施例提出的一种WiFi热点的信道选择系统,包括:
配置文件生成模块10,用于根据获取的设置信息生成对应的热点服务配置文件,所述热点服务配置文件包括工作频段配置项、ACS算法选择配置项和信道扫描次数配置项;
信道扫描模块20,用于根据所述ACS算法选择配置项和所述信道扫描次数配置项对所述工作频段配置项对应的工作频段下的所有可支持信道进行扫描,以获得目标信道。
本实施例中,所述信道扫描模块20具体用于:
根据所述信道扫描次数配置项获取目标扫描次数;
对所述工作频段配置项对应的工作频段下的所有可支持信道中的每个信道进行所述目标扫描次数的扫描;
获取每次扫描时的干扰系数;
计算所述工作频段配置项对应的工作频段下的所有可支持信道中的每个信道的干扰系数平均值;
将所有所述干扰系数平均值中最小的干扰系数平均值对应的信道作为所述目标信道。
本实施例中,所述信道扫描模块20具体用于:
当所述工作频段配置项为hw_mode=g,所述ACS算法选择配置项为channel=acs_survey,所述信道扫描次数配置项为acs_num_scans=n(n为大于等于1的自然数)时,对2.4G频段下的所有可支持信道中的每个信道扫描n次;
获取每次扫描时的干扰系数;
计算2.4G频段下的所有可支持信道中的每个信道的干扰系数平均值,并将最小干扰系数平均值对应的信道作为所述目标信道。
本实施例中,所述信道扫描模块20具体用于:
当所述工作频段配置项为hw_mode=any,所述ACS算法选择配置项为channel=acs_survey,所述信道扫描次数配置项为acs_num_scans=n(n为大于等于1的自然数)时,对2.4G频段和5.8G频段下的所有可支持信道中的每个信道扫描n次;
获取每次扫描时的干扰系数;
计算2.4G频段和5.8G频段下的所有可支持信道中的每个信道的干扰系数平均值,并将最小干扰系数平均值对应的信道作为所述目标信道。
本发明实施例提出的WiFi热点的信道选择系统的技术特征和技术效果与本发明实施例提出的方法相同,在此不予赘述。
此外,本发明的实施例还提出一种存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述方法的步骤。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,“计算机可读介质”可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。
计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
尽管已经示出和描述了本发明的实施例,本领域的普通技术人员可以理解:在不脱离本发明的原理和宗旨的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由权利要求及其等同物限定。