CN104702608A - WiFi共享系统 - Google Patents
WiFi共享系统 Download PDFInfo
- Publication number
- CN104702608A CN104702608A CN201510109765.3A CN201510109765A CN104702608A CN 104702608 A CN104702608 A CN 104702608A CN 201510109765 A CN201510109765 A CN 201510109765A CN 104702608 A CN104702608 A CN 104702608A
- Authority
- CN
- China
- Prior art keywords
- wifi
- user
- wpa
- function
- server
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/08—Access security
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W84/00—Network topologies
- H04W84/02—Hierarchically pre-organised networks, e.g. paging networks, cellular networks, WLAN [Wireless Local Area Network] or WLL [Wireless Local Loop]
- H04W84/10—Small scale networks; Flat hierarchical networks
- H04W84/12—WLAN [Wireless Local Area Networks]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Mobile Radio Communication Systems (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了一种WiFi共享系统,该WiFi共享系统包括:客户端界面模块、服务器界面模块、登录认证模块、流量控制模块、计费充值模块、数据库模块。本发明将每一台家庭的路由器或拥有无线网卡的电脑作为基站,提供WiFi信号给需要上网的会员,有效缓解了蜂窝网的数据拥堵,不需要询问WiFi密码即可接入网络,能够以免费或远低于运营商的资费提供了优于运营商蜂窝网的服务,通过实名认证和诸多安全技术手段确保在陌生环境下安全连接WiFi,对于带有木马或病毒的WiFi过滤,WiFi提供者在为其他会员提供WiFi信号的同时实现盈利i。本发明的结构简单,使用方便,为使用者提供了一种便捷的途径。
Description
技术领域
本发明属于WiFi共享技术领域,尤其涉及一种WiFi共享系统。
背景技术
传统的WiFi共享方式主要是在咖啡厅,机场等公共场所,通过向店家问询密码之后手动输入密码来接入互联网。
WiFi共享领域较为先进的公司如Fon Technology S.L公司开创了P2P式无线宽带共享社区模式。该模式的核心是发动所有拥有WIFI AP设备和宽带接入资源的人或机构,通过加盟的方式开放自己的资源。用户只需共享出自己的AP,就可以免费接入联盟中其他用户的AP。
通过问询密码手动输入方式该耗时时间久,输入不方便,且AP所有者不一定愿意提供WiFi密码。
Fon公司的共享社区模式需要购买Fon路由器,在路由器中安装Fon固件就可以加入到Fon网络中,但目前并不是所有的无线路由器都能够兼容Fon公司的固件。
发明内容
本发明的目的在于提供一种WiFi共享系统,旨在解决现有的WiFi共享方 法存在的通过问询密码手动输入方式耗时较长,输入不方便,Fon路由器使用条件有限的问题。
本发明是这样实现的,一种WiFi共享系统,该WiFi共享系统包括:客户端界面模块、服务器界面模块、登录认证模块、流量控制模块、计费充值模块、数据库模块;
客户端界面模块,用于实现客户的登录;
服务器界面模块,用于实现服务器管理;
登录认证模块,与客户端界面模块连接,对客户端的登录身份进行认证;
流量控制模块,与登录认证模块连接,用于实现WiFi流量控制;
计费充值模块,与流量控制模块连接,用于计算产生流量的费用;
数据库模块,与服务器界面模块、登录认证模块、流量控制模块、计费充值模块5连接,用于存储登录记录、WiFi流量、产生流量的费用。
进一步,该WiFi共享系统的WiFi共享方法具体包括:
WiFi提供者注册阶段打开自己的AP,软件会自动扫描设备的相关信息,包括AP的MAC地址,WiFi密码,广域网地址和远程配置端口号,将信息提交给服务器,等待WiFi使用者接入,WiFi使用者的移动终端搜索到iflying字样的WiFi并点击确定后,会向系统服务器发送所连接路由器的Mac地址和广域网地址等信息,系统服务器通过路由器Mac地址查询数据库获得WiFi提供者在注册阶段提交到数据库的WiFi密码,服务器通过密文形式发送给WiFi使用者WiFi 密码,WiFi使用者接入互联网;系统从用户接入互联网的时刻开始统计WiFi使用者使用流量,结束使用后给服务器发送结束使用请求,完成操作。
进一步,用户注册的步骤具体包括;
步骤一,注册过程:
通过手机号码或邮箱注册成为系统会员,供选择身份有WiFi提供者、WiFi使用者、WiFi提供者+WiFi使用者;
当选择身份为WiFi提供者时,打开AP,自动扫描设备的相关信息,包括AP的MAC地址,WiFi密码,广域网地址和远程配置端口号,将信息提交给服务器。其他注册内容包括手机号码,绑定银行卡号或支付宝账号;
当选择身份为WiFi使用者时,需要为账户充值,注册内容包括手机号码,绑定银行卡号或支付宝账号;
当选择身份为WiFi提供者+WiFi使用者时,需要打开AP,自动扫描设备的相关信息,包括AP的MAC地址,WiFi密码,广域网地址和远程配置端口号,将信息提交给服务器,其他注册内容包括手机号码,绑定银行卡号或支付宝账号;
步骤二,搜索过程:
WiFi提供者开启AP,并统一命名为iflying,WiFi使用者的移动终端搜索iflying字样的WiFi并点击确定;
步骤三,使用过程:
WiFi使用者的移动终端搜索到iflying字样的WiFi并点击确定后,向系统服务器发送所连接路由器的Mac地址和广域网地址等信息,系统服务器通过路由器Mac地址查询数据库获得WiFi提供者在注册阶段提交到数据库的WiFi密码,服务器通过密文形式发送给WiFi使用者WiFi密码,WiFi使用者接入互联网,从用户接入互联网的时刻开始统计WiFi使用者使用流量,结束使用后给服务器发送结束使用请求,WiFi使用者移动客户端显示使用过程中产生的流量及其对应金额,WiFi提供者客户端也显示提供WiFi过程中产生的流量及其对应金额;
步骤四,后续过程:
WiFi提供者选择对获得金额进行提现,WiFi使用者查询账户余额。
进一步,该WiFi共享系统的WiFi扫描流程具体包括:
步骤一,启动wifi服务:
在SystemServer启动的时候,会生成一个ConnectivityService的实例;
ConnectivityService类中private ConnectivityService构造函数创建WifiService和WifiStateTracker对象;
创建WifiStateTracker和WifiService对象用来启动wifi管理服务WifiStateTracker会创建WifiMonitor用来接收来自底层的事件,WifiService和WifiMonitor是整个模块的核心;
WifiService负责启动关闭wpa_supplicant、启动关闭WifiMonitor监视线 程和把命令下发给wpa_supplicant;
WifiMonitor开始运行线程,会请求连接wpa_supplicant,通过调用WifiStateTracker函数connectToSupplicant然后通过wifi.c的wifi_connect_to_supplicant,接着向wpa_ctrl的wpa_ctrl_open。然后通过CreateFile函数向wpa_supplicant读取数据;连接成功后会发送EVENT_SUPPLICANT_CONNECTION消息启动获取DHCP地址线程阻塞调用,并记录自己的MAC地址接着开启一个死循环处理wpa_supplicant发送的事件;
当用户点击Wi-Fi按钮的时WifiEnabler中的onPreferenceChange函数会被调用,再由该函数调用WifiManager的setWifiEnabled函数,先引用AIDL经由IWifiManager通过Binder机制调用WifiService的setWifiEnabled设置Wifi开启状态,同时WifiService会发送MESSAGE_ENABLE_WIFI消息,由WifiService的setWifiEnabledBlocking函数响应该消息,负责Wifi可用的需要工作,首先他会加载驱动loadDriver(),然后开启wpa_supplicant再注册广播消息,而后通过WifiStateTracker来启动WifiMonitor中的监视线程,以上使能成功后,会调用setWifiEnabledState最后广播WIFI_STATE_CHANGED_ACTION这个Intent,至此Wifi功能开启。
步骤二,扫描AP
WifiSettings和WifiEnabler创建的时候就会向Android注册接收WIFI_STATE_CHANGED_ACTION,因此会收到 WIFI_STATE_CHANGED_ACTION这个Intent,WifiEnabler负责使得图标加亮,WifiSettings负责使得开启扫描AP,经由WifiService的startScan,再通过JNI由android_net_wifi_scanCommand函数向wpa_supplicant发送扫描命令.当wpa_supplicant处理完SCAN命令后,它会向控制通道发送事件通知扫描完成,从而wifi_wait_for_event函数会接收到该事件,由此WifiMonitor中的MonitorThread会被执行来处理接扫描结果事件,线程通过WifiStateTracker广播SCAN_RESULTS_AVAILABLE_ACTION这个Intent,而WifiSettings注册了接收此Intent,最终由其相应函数updateAccessPoints将AP列表,以GUI的形式列出来。
进一步,移动终端WiFi连接流程包括:
当用户选择一个iflying字样的AP时会弹出一个AP参数配置对话框,此对话框会显示当前选择的AP信号强度,并触发一个点击事件,移动终端软件会向系统服务器发送所连接路由器的Mac地址和广域网地址信息,系统服务器通过路由器Mac地址查询数据库获得WiFi提供者在注册阶段提交到数据库的WiFi密码,服务器通过密文形式发送给WiFi使用者WiFi密码,WifiSettings中的onPreferenceTreeClick会被调用,用户配置好之后点击连接按钮,onClick函数会被调用。
进一步,移动终端WiFi连接流程具体包括:
第一步,连接请求
Settings的connect函数响应连接,更新网络保存配置,更新设置当前选择的优先级最高,并保存,然后通过enableNetwork使得其他网络不可用来进行连接,最后调用WifiManager的reconnect函数连接当前选择的网络;
WifiManager的reconnect函数通过AIDL的Binder机制,调用WifiService的reconnect函数;
然后会调用WifiStateTracker的reconnectCommand函数,通过JNI(android_net_wif_Wifi)的android_net_wifi_reconnectCommand函数向WPA_WPASUPPLICANT发送RECONNECT命令;
android_net_wifi_Wifi通过doCommand调用wifi.c中的wifi_command函数来发送命令;
最后通过wpa_ctrl的wpa_ctrl_request函数向控制通道发送连接命令;
第二步,返回请求
当连接上之后WPA_SUPPLICANT会向控制通道发送连接成功命令,wifi.c的wifi_wait_for_event函数阻塞调用并返回这个命令的字符串;
而后WifiMonitor会被执行来处理这个事件,WifiMonitor再调用WifiStateTracker的notifyStateChange,WifiStateTracker则接着会往自身发送EVENT_DHCP_START消息来启动DHCP去获取IP地址,然后广播NETWORK_STATE_CHANGED_ACTION消息,最后由WifiSettings类来响应,改变状态和界面信息;
wpa_supplicant用来支持WEP,WPA/WPA2和WAPI无线协议和加密认证的,而实际上的工作内容是通过socket与驱动交互上报数据给用户,而用户通过socket发送命令给wpa_supplicant调动驱动来对WiFi芯片操作。
本发明提供的WiFi共享系统,基于用户现有的AP资源,通过软件方法实现,不需额外购买任何固件或者附加设备,即可共享WIFI资源。
本发明与现有技术相比,具有以下优势:
1)面对大幅增长的数据流量,移动蜂窝网不堪重负,用户体验差,而本发明将每一台家庭的路由器或拥有无线网卡的电脑作为基站,提供WiFi信号给需要上网的会员,在不需要花费昂贵的基站建设费用的基础上,有效缓解了蜂窝网的数据拥堵。
2)传统的WiFi共享方式最常见的为向WiFi提供方问询密码之后手动输入密码来接入网络,按本发明不需要询问WiFi密码即可接入网络。
3)因为移动终端与本发明AP距离更近,故WiFi共享系统能够以免费或远低于运营商的资费提供了优于运营商蜂窝网的服务。
4)通过实名认证和诸多安全技术手段确保在陌生环境下安全连接WiFi,对于带有木马或病毒的WiFi过滤。
5)传统的方式下WiFi提供者不一定愿意提供WiFi密码给陌生人,本发明中WiFi提供者在为其他会员提供WiFi信号的同时实现盈利更愿意提供wiFi。
附图说明
图1是本发明实施例提供的实施例的方法流程图;
图2是本发明实施例提供的用户注册流程图;
图3是本发明实施例提供的WiFi扫描流程分析图;
图4是本发明实施例提供的WiFi连接流程分析图;
图5是本发明实施例提供的WiFi共享系统结构示意图;
图中:1、客户端界面模块;2、服务器界面模块;3、登录认证模块;4、流量控制模块;5、计费充值模块;6、数据库模块。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
下面结合附图及具体实施例对本发明的应用原理作进一步描述。
如图1所示,本发明实施例的WiFi共享方法具体包括:
WiFi共享系统给用户提供一个安全的平台,用户在本发明注册后成为会员,会员之间可以实现WiFi的共享。
会员可供选择身份有1.WiFi提供者,2.WiFi使用者,3.WiFi提供者+WiFi使用者。WiFi提供者注册阶段需要打开自己的AP,安装的系统软件会自动扫描设备的相关信息,包括AP的MAC地址,WiFi密码,广域网地址和远程配置端口号,将信息提交给服务器,等待WiFi使用者接入。WiFi使用者的移动终端搜 索到“iflying”字样的WiFi并点击确定后,会向系统服务器发送所连接路由器的Mac地址和广域网地址等信息,系统服务器通过路由器Mac地址查询数据库获得WiFi提供者在注册阶段提交到数据库的WiFi密码。服务器通过密文形式发送给WiFi使用者WiFi密码,WiFi使用者接入互联网。
系统从用户接入互联网的时刻开始统计WiFi使用者使用流量,结束使用后给服务器发送结束使用请求,完成操作。
如图2所示,本发明实施例的用户注册流程图;
1)注册过程:
一个新用户要加入联盟,首先要通过手机号码或邮箱注册成为系统会员,可供选择身份有1.WiFi提供者,2.WiFi使用者,3.WiFi提供者+WiFi使用者。
当选择身份为WiFi提供者时,需要打开自己的AP,本发明会自动扫描设备的相关信息,包括AP的MAC地址,WiFi密码,广域网地址和远程配置端口号,将信息提交给服务器。其他注册内容包括手机号码,绑定银行卡号或支付宝账号。
当选择身份为WiFi使用者时,需要为账户充值,注册内容包括手机号码,绑定银行卡号或支付宝账号。
当选择身份为WiFi提供者+WiFi使用者时,需要打开自己的AP,本发明会自动扫描设备的相关信息,包括AP的MAC地址,WiFi密码,广域网地址和远程配置端口号,将信息提交给服务器。其他注册内容包括手机号码,绑定银 行卡号或支付宝账号。
2)搜索过程:
WiFi提供者开启AP,并统一命名为“ifiying”,WiFi使用者的移动终端搜索“ifiying”字样的WiFi并点击确定。
3)使用过程:
WiFi使用者的移动终端搜索到“ifiying”字样的WiFi并点击确定后,会向系统服务器发送所连接路由器的Mac地址和广域网地址等信息,系统服务器通过路由器Mac地址查询数据库获得WiFi提供者在注册阶段提交到数据库的WiFi密码。服务器通过密文形式发送给WiFi使用者WiFi密码,WiFi使用者接入互联网。从用户接入互联网的时刻开始统计WiFi使用者使用流量,结束使用后给服务器发送结束使用请求,WiFi使用者移动客户端显示使用过程中产生的流量及其对应金额(WiFi流量可以从系统属性中获取移动终端设备的wifi interface名称,从系统文件读取该接口的数据流量),WiFi提供者客户端也显示提供WiFi过程中产生的流量及其对应金额。
4)后续过程:
WiFi提供者可选择对获得金额进行提现,WiFi使用者查询账户余额。
如图3所示,本发明实施例的WiFi扫描流程图,具体包括:
1)启动wifi服务
1.在SystemServer启动的时候,会生成一个ConnectivityService的实例。
2.ConnectivityService类中private ConnectivityService(Context context)构造函数创建WifiService和WifiStateTracker对象。
3.创建WifiStateTracker和WifiService对象用来启动wifi管理服务WifiStateTracker会创建WifiMonitor用来接收来自底层的事件,WifiService和WifiMonitor是整个模块的核心。
4.WifiService负责启动关闭wpasupplicant、启动关闭WifiMonitor监视线程和把命令下发给wpa_supplicant。
5.WifiMonitor开始运行线程,会请求连接wpa_supplicant,通过调用WifiStateTracker函数connectToSupplicant然后通过wifi.c的wifi_connect_to_supplicant,接着向wpa_ctrl的wpa_ctrl_open。然后通过CreateFile函数向wpa_supplicant读取数据。连接成功后会发送EVENT_SUPPLICANT_CONNECTION消息启动获取DHCP地址线程阻塞调用(当连接上AP的时候,该线程会被执行起来获取IP地址),并记录自己的MAC地址(因为MAC地址不会改变所以请求一次即可)接着开启一个死循环处理wpasupplicant发送的事件。
当用户点击Wi-Fi按钮的时候WifiEnabler中的onPreferenceChange函数会被调用,再由该函数调用WifiManager的setWifiEnabled函数,它先引用AIDL经由IWifiManager通过Binder机制调用WifiService的setWifiEnabled设置Wifi开启状态。同时WifiService会发送MESSAGE_ENABLE_WIFI消息,由 WifiService的setWifiEnabledBlocking函数响应该消息,负责Wifi可用的需要工作。首先他会加载驱动loadDriver(),然后开启wpa_supplicant再注册广播消息,而后通过WifiStateTracker来启动WifiMonitor中的监视线程。以上工作使能成功后,会调用setWifiEnabledState最后广播WIFI_STATE_CHANGED_ACTION这个Intent,至此Wifi功能开启。
2)扫描AP
WifiSettings和WifiEnabler创建的时候就会向Android注册接收
WIFI_STATE_CHANGED_ACTION,因此他们都会收到WIFI_STATE_CHANGED_ACTION这个Intent,WifiEnabler负责使得图标加亮,WifiSettings负责使得开启扫描AP。经由WifiService的startScan,再通过JNI由android_net_wifi_scanCommand函数向wpa_supplicant发送扫描命令.当wpa_supplicant处理完SCAN命令后,它会向控制通道发送事件通知扫描完成,从而wifi_wait_for_event函数会接收到该事件,由此WifiMonitor中的MonitorThread会被执行来处理接扫描结果事件。此线程通过WifiStateTracker广播SCAN_RESULTS_AVAILABLE_ACTION这个Intent。而WifiSettings注册了接收此Intent,最终由其相应函数updateAccessPoints将AP列表,以GUI的形式列出来。
如图4所示,移动终端WiFi连接流程图,具体包括:
当用户选择一个本发明“iflying”字样的AP时会弹出一个AP参数配置对话框,此对话框会显示当前选择的AP信号强度,并触发一个点击事件,(默认本发明AP均设置密码),移动终端软件会向系统服务器发送所连接路由器的Mac地址和广域网地址等信息,系统服务器通过路由器Mac地址查询数据库获得WiFi提供者在注册阶段提交到数据库的WiFi密码。服务器通过密文形式发送给WiFi使用者WiFi密码。WifiSettings中的onPreferenceTreeClick会被调用,用户配置好之后点击连接按钮,onClick函数会被调用。
1)连接请求
一.Settings的connect函数响应连接,更新网络保存配置,更新设置当前选择的优先级最高,并保存。然后通过enableNetwork使得其他网络不可用来进行连接。最后调用WifiManager的reconnect函数连接当前选择的网络。
二.WifiManager的reconnect函数通过AIDL的Binder机制,调用WifiService的reconnect函数。
三.然后会调用WifiStateTracker的reconnectCommand函数,通过JNI(android_net_wifi_Wifi)的android_net_wifi_reconnectCommand函数向WPA_WPASUPPLICANT发送RECONNECT命令。
四.android_net_wifi_Wifi通过doCommand(命令名,响应缓冲,响应缓存大小)调用wifi.c中的wifi_command函数来发送命令。
五.最后通过wpa_ctrl的wpa_ctrl_request函数向控制通道发送连接命令。
2)返回请求
六.当连接上之后WPA_SUPPLICANT会向控制通道发送连接成功命令。wifi.c的
wifi_wait_for_event函数阻塞调用并返回这个命令的字符串(CONNECTED)。
七.而后WifiMonitor会被执行来处理这个事件,WifiMonitor再调用WifiStateTracker的notifyStateChange,WifiStateTracker则接着会往自身发送EVENT_DHCP_START消息来启动DHCP去获取IP地址,然后广播NETWORK_STATE_CHANGED_ACTION消息,最后由WifiSettings类来响应,改变状态和界面信息。
wpa_supplicant主要是用来支持WEP,WPA/WPA2和WAPI无线协议和加密认证的,而实际上的工作内容是通过socket(不管是wpa_supplicant与上层还是wpa_supplicant与驱动都采用socket通讯)与驱动交互上报数据给用户,而用户可以通过socket发送命令给wpa_supplicant调动驱动来对WiFi芯片操作。简单的说,wpa_supplicant就是WiFi驱动和用户的中转站外加对协议和加密认证的支持。
如图5所示,本发明实施例的主要包括:客户端界面模块1、服务器界面模块2、登录认证模块3、流量控制模块4、计费充值模块5、数据库模块6;
客户端界面模块1的移动客户端用Android开发,电脑客户端由C++开发, 后台数据库采用sql server开发。
客户端界面模块1,用于实现客户的登录;
服务器界面模块2,用于实现服务器管理;
登录认证模块3,与客户端界面模块1连接,对客户端的登录身份进行认证;
流量控制模块4,与登录认证模块3连接,用于实现WiFi流量控制;
计费充值模块5,与流量控制模块4连接,用于计算产生流量的费用;
数据库模块6,与服务器界面模块2、登录认证模块3、流量控制模块4、计费充值模块5连接,用于存储登录记录、WiFi流量、产生流量的费用。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (6)
1.一种WiFi共享系统,其特征在于,该WiFi共享系统包括:客户端界面模块、服务器界面模块、登录认证模块、流量控制模块、计费充值模块、数据库模块;
客户端界面模块,用于实现客户的登录;
服务器界面模块,用于实现服务器管理;
登录认证模块,与客户端界面模块连接,对客户端的登录身份进行认证;
流量控制模块,与登录认证模块连接,用于实现WiFi流量控制;
计费充值模块,与流量控制模块连接,用于计算产生流量的费用;
数据库模块,与服务器界面模块、登录认证模块、流量控制模块、计费充值模块5连接,用于存储登录记录、WiFi流量、产生流量的费用。
2.如权利要求1所述的WiFi共享系统,其特征在于,该WiFi共享系统的WiFi共享方法具体包括:
WiFi提供者注册阶段打开自己的AP,软件会自动扫描设备的相关信息,包括AP的MAC地址,WiFi密码,广域网地址和远程配置端口号,将信息提交给服务器,等待WiFi使用者接入,WiFi使用者的移动终端搜索到iflying字样的WiFi并点击确定后,会向系统服务器发送所连接路由器的Mac地址和广域网地址等信息,系统服务器通过路由器Mac地址查询数据库获得WiFi提供者在注册阶段提交到数据库的WiFi密码,服务器通过密文形式发送给WiFi使用者WiFi密码,WiFi使用者接入互联网;系统从用户接入互联网的时刻开始统计WiFi使用者使用流量,结束使用后给服务器发送结束使用请求,完成操作。
3.如权利要求2所述的WiFi共享系统,其特征在于,用户注册的步骤具体包括;
步骤一,注册过程:
通过手机号码或邮箱注册成为系统会员,供选择身份有WiFi提供者、WiFi使用者、WiFi提供者+WiFi使用者;
当选择身份为WiFi提供者时,打开AP,自动扫描设备的相关信息,包括AP的MAC地址,WiFi密码,广域网地址和远程配置端口号,将信息提交给服务器。其他注册内容包括手机号码,绑定银行卡号或支付宝账号;
当选择身份为WiFi使用者时,需要为账户充值,注册内容包括手机号码,绑定银行卡号或支付宝账号;
当选择身份为WiFi提供者+WiFi使用者时,需要打开AP,自动扫描设备的相关信息,包括AP的MAC地址,WiFi密码,广域网地址和远程配置端口号,将信息提交给服务器,其他注册内容包括手机号码,绑定银行卡号或支付宝账号;
步骤二,搜索过程:
WiFi提供者开启AP,并统一命名为iflying,WiFi使用者的移动终端搜索iflying字样的WiFi并点击确定;
步骤三,使用过程:
WiFi使用者的移动终端搜索到iflying字样的WiFi并点击确定后,向系统服务器发送所连接路由器的Mac地址和广域网地址等信息,系统服务器通过路由器Mac地址查询数据库获得WiFi提供者在注册阶段提交到数据库的WiFi密码,服务器通过密文形式发送给WiFi使用者WiFi密码,WiFi使用者接入互联网,从用户接入互联网的时刻开始统计WiFi使用者使用流量,结束使用后给服务器发送结束使用请求,WiFi使用者移动客户端显示使用过程中产生的流量及其对应金额,WiFi提供者客户端也显示提供WiFi过程中产生的流量及其对应金额;
步骤四,后续过程:
WiFi提供者选择对获得金额进行提现,WiFi使用者查询账户余额。
4.如权利要求2所述的WiFi共享系统,其特征在于,该WiFi共享系统的WiFi扫描流程具体包括:
步骤一,启动wifi服务:
在SystemServer启动的时候,会生成一个ConnectivityService的实例;
ConnectivityService类中private ConnectivityService构造函数创建WifiService和WifiStateTracker对象;
创建WifiStateTracker和WifiService对象用来启动wifi管理服务WifiStateTracker会创建WifiMonitor用来接收来自底层的事件,WifiService和WifiMonitor是整个模块的核心;
WifiService负责启动关闭wpa_supplicant、启动关闭WifiMonitor监视线程和把命令下发给wpa_supplicant;
WifiMonitor开始运行线程,会请求连接wpa_supplicant,通过调用WifiStateTracker函数connectToSupplicant然后通过wifi.c的wifi_connect_to_supplicant,接着向wpa_ctrl的wpa_ctrl_open。然后通过CreateFile函数向wpa_supplicant读取数据;连接成功后会发送EVENT_SUPPLICANT_CONNECTION消息启动获取DHCP地址线程阻塞调用,并记录自己的MAC地址接着开启一个死循环处理wpa_supplicant发送的事件;
当用户点击Wi-Fi按钮的时WifiEnabler中的onPreferenceChange函数会被调用,再由该函数调用WifiManager的setWifiEnabled函数,先引用AIDL经由IWifiManager通过Binder机制调用WifiService的setWifiEnabled设置Wifi开启状态,同时WifiService会发送MESSAGE_ENABLE_WIFI消息,由WifiService的setWifiEnabledBlocking函数响应该消息,负责Wifi可用的需要工作,首先他会加载驱动loadDriver(),然后开启wpa_supplicant再注册广播消息,而后通过WifiStateTracker来启动WifiMonitor中的监视线程,以上使能成功后,会调用setWifiEnabledState最后广播WIFI_STATE_CHANGED_ACTION这个Intent,至此Wifi功能开启。
步骤二,扫描AP
WifiSettings和WifiEnabler创建的时候就会向Android注册接收WIFI_STATE_CHANGED_ACTION,因此会收到WIFI_STATE_CHANGED_ACTION这个Intent,WifiEnabler负责使得图标加亮,WifiSettings负责使得开启扫描AP,经由WifiService的startScan,再通过JNI由android_net_wifi_scanCommand函数向wpa_supplicant发送扫描命令.当wpa_supplicant处理完SCAN命令后,它会向控制通道发送事件通知扫描完成,从而wifi_wait_for_event函数会接收到该事件,由此WifiMonitor中的MonitorThread会被执行来处理接扫描结果事件,线程通过WifiStateTracker广播SCAN_RESULTS_AVAILABLE_ACTION这个Intent,而WifiSettings注册了接收此Intent,最终由其相应函数updateAccessPoints将AP列表,以GUI的形式列出来。
5.如权利要求2所述的WiFi共享系统,其特征在于,移动终端WiFi连接流程包括:
当用户选择一个iflying字样的AP时会弹出一个AP参数配置对话框,此对话框会显示当前选择的AP信号强度,并触发一个点击事件,移动终端软件会向系统服务器发送所连接路由器的Mac地址和广域网地址信息,系统服务器通过路由器Mac地址查询数据库获得WiFi提供者在注册阶段提交到数据库的WiFi密码,服务器通过密文形式发送给WiFi使用者WiFi密码,WifiSettings中的onPreferenceTreeClick会被调用,用户配置好之后点击连接按钮,onClick函数会被调用。
6.如权利要求5所述的WiFi共享系统,其特征在于,移动终端WiFi连接流程具体包括:
第一步,连接请求
Settings的connect函数响应连接,更新网络保存配置,更新设置当前选择的优先级最高,并保存,然后通过enableNetwork使得其他网络不可用来进行连接,最后调用WifiManager的reconnect函数连接当前选择的网络;
WifiManager的reconnect函数通过AIDL的Binder机制,调用WifiService的reconnect函数;
然后会调用WifiStateTracker的reconnectCommand函数,通过JNI(android_net_wifi_Wifi)的android_net_wifi_reconnectCommand函数向WPA_WPASUPPLICANT发送RECONNECT命令;
android_net_wifi_Wifi通过doCommand调用wifi.c中的wifi_command函数来发送命令;
最后通过wpa_ctrl的wpa_ctrl_request函数向控制通道发送连接命令;
第二步,返回请求
当连接上之后WPA_SUPPLICANT会向控制通道发送连接成功命令,wifi.c的wifi_wait_for_event函数阻塞调用并返回这个命令的字符串;
而后WifiMonitor会被执行来处理这个事件,WifiMonitor再调用WifiStateTracker的notifyStateChange,WifiStateTracker则接着会往自身发送EVENT_DHCP_START消息来启动DHCP去获取IP地址,然后广播NETWORK_STATE_CHANGED_ACTION消息,最后由WifiSettings类来响应,改变状态和界面信息;
wpa_supplicant用来支持WEP,WPA/WPA2和WAPI无线协议和加密认证的,而实际上的工作内容是通过socket与驱动交互上报数据给用户,而用户通过socket发送命令给wpa_supplicant调动驱动来对WiFi芯片操作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510109765.3A CN104702608B (zh) | 2015-03-13 | 2015-03-13 | WiFi共享系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510109765.3A CN104702608B (zh) | 2015-03-13 | 2015-03-13 | WiFi共享系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104702608A true CN104702608A (zh) | 2015-06-10 |
CN104702608B CN104702608B (zh) | 2018-04-06 |
Family
ID=53349377
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510109765.3A Expired - Fee Related CN104702608B (zh) | 2015-03-13 | 2015-03-13 | WiFi共享系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104702608B (zh) |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104994118A (zh) * | 2015-08-11 | 2015-10-21 | 吴培希 | 一种基于动态密码的WiFi认证系统及方法 |
CN105069669A (zh) * | 2015-07-01 | 2015-11-18 | 陆洋 | 一种基于WiFi的流量交易方法和系统 |
CN105187315A (zh) * | 2015-08-03 | 2015-12-23 | 深圳奇沃智联科技有限公司 | 具备4G及Wi-Fi功能的路由器 |
CN105873122A (zh) * | 2015-12-02 | 2016-08-17 | 乐视致新电子科技(天津)有限公司 | 无线路由器WiFi信号强度显示方法及装置、无线路由器 |
CN106603526A (zh) * | 2016-12-07 | 2017-04-26 | 广东欧珀移动通信有限公司 | WiFi/热点的开启方法及装置 |
CN106658358A (zh) * | 2016-09-30 | 2017-05-10 | 宇龙计算机通信科技(深圳)有限公司 | 一种共享网络的方法、装置和终端 |
CN106686627A (zh) * | 2016-12-07 | 2017-05-17 | 广东欧珀移动通信有限公司 | WiFi/热点的开启方法及装置 |
CN106879045A (zh) * | 2017-01-25 | 2017-06-20 | 成都众网行科技有限公司 | 无线网络访问用户筛选装置与方法 |
CN106936604A (zh) * | 2017-03-10 | 2017-07-07 | 南京航空航天大学 | 一种移动设备共享网络流量系统及其方法 |
CN107241708A (zh) * | 2017-05-25 | 2017-10-10 | 武汉爱哦科技有限公司 | 一种全城互通WiFi共享系统 |
CN107635203A (zh) * | 2017-09-22 | 2018-01-26 | 北京小米移动软件有限公司 | 接入无线网的认证方法和装置 |
CN108966311A (zh) * | 2018-07-19 | 2018-12-07 | 广东工业大学 | 一种路由器、终端及网络共享方法、网络记录方法 |
CN109905853A (zh) * | 2017-12-10 | 2019-06-18 | 成都弥新科技有限公司 | 一种太阳能智能路灯间的wifi辐射系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102238548A (zh) * | 2011-08-09 | 2011-11-09 | 陈佳阳 | 内外网分离架构的无线路由器及其共享无线网络的方法 |
CN102710634A (zh) * | 2012-05-29 | 2012-10-03 | 刘乃安 | 智慧wifi分享系统 |
CN103874092A (zh) * | 2014-04-04 | 2014-06-18 | 周隽 | 基于互联网通过移动终端远程管理私有网络进行主动分享的方案及系统 |
US20140220806A1 (en) * | 2013-02-04 | 2014-08-07 | Cho-Liang Liang | Portable plug adapter with wireless transceiver module |
-
2015
- 2015-03-13 CN CN201510109765.3A patent/CN104702608B/zh not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102238548A (zh) * | 2011-08-09 | 2011-11-09 | 陈佳阳 | 内外网分离架构的无线路由器及其共享无线网络的方法 |
CN102710634A (zh) * | 2012-05-29 | 2012-10-03 | 刘乃安 | 智慧wifi分享系统 |
US20140220806A1 (en) * | 2013-02-04 | 2014-08-07 | Cho-Liang Liang | Portable plug adapter with wireless transceiver module |
CN103874092A (zh) * | 2014-04-04 | 2014-06-18 | 周隽 | 基于互联网通过移动终端远程管理私有网络进行主动分享的方案及系统 |
Non-Patent Citations (2)
Title |
---|
佚名: "Android中WIFI原理及流程分析", 《WWW.360DOC.COM/CONTENT/12/0326/17/8157643_198010646.SHTML》 * |
熊少英: "共享WIFI系统设计与实现", 《中国优秀硕士学位论文》 * |
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105069669A (zh) * | 2015-07-01 | 2015-11-18 | 陆洋 | 一种基于WiFi的流量交易方法和系统 |
CN105187315A (zh) * | 2015-08-03 | 2015-12-23 | 深圳奇沃智联科技有限公司 | 具备4G及Wi-Fi功能的路由器 |
CN104994118A (zh) * | 2015-08-11 | 2015-10-21 | 吴培希 | 一种基于动态密码的WiFi认证系统及方法 |
CN105873122A (zh) * | 2015-12-02 | 2016-08-17 | 乐视致新电子科技(天津)有限公司 | 无线路由器WiFi信号强度显示方法及装置、无线路由器 |
CN106658358A (zh) * | 2016-09-30 | 2017-05-10 | 宇龙计算机通信科技(深圳)有限公司 | 一种共享网络的方法、装置和终端 |
CN106686627A (zh) * | 2016-12-07 | 2017-05-17 | 广东欧珀移动通信有限公司 | WiFi/热点的开启方法及装置 |
CN106603526A (zh) * | 2016-12-07 | 2017-04-26 | 广东欧珀移动通信有限公司 | WiFi/热点的开启方法及装置 |
CN106603526B (zh) * | 2016-12-07 | 2020-03-24 | Oppo广东移动通信有限公司 | WiFi/热点的开启方法及装置 |
CN106879045A (zh) * | 2017-01-25 | 2017-06-20 | 成都众网行科技有限公司 | 无线网络访问用户筛选装置与方法 |
CN106936604A (zh) * | 2017-03-10 | 2017-07-07 | 南京航空航天大学 | 一种移动设备共享网络流量系统及其方法 |
CN107241708A (zh) * | 2017-05-25 | 2017-10-10 | 武汉爱哦科技有限公司 | 一种全城互通WiFi共享系统 |
CN107635203A (zh) * | 2017-09-22 | 2018-01-26 | 北京小米移动软件有限公司 | 接入无线网的认证方法和装置 |
CN109905853A (zh) * | 2017-12-10 | 2019-06-18 | 成都弥新科技有限公司 | 一种太阳能智能路灯间的wifi辐射系统 |
CN108966311A (zh) * | 2018-07-19 | 2018-12-07 | 广东工业大学 | 一种路由器、终端及网络共享方法、网络记录方法 |
CN108966311B (zh) * | 2018-07-19 | 2021-01-26 | 广东工业大学 | 一种路由器、终端及网络共享方法、网络记录方法 |
Also Published As
Publication number | Publication date |
---|---|
CN104702608B (zh) | 2018-04-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104702608A (zh) | WiFi共享系统 | |
CN103929748B (zh) | 一种物联网无线终端及其配置方法和无线网络接入点 | |
US9237154B2 (en) | Secure and automatic connection to wireless network | |
US9847988B2 (en) | Single-SSID and dual-SSID enhancements | |
TWI525447B (zh) | 針對受保全熱點網路之動態帳戶建立技術 | |
TWI623205B (zh) | 在虛擬網路中端對端架構、api框架、發現及存取 | |
US8495195B1 (en) | Cookie preservation when switching devices | |
CN107615799A (zh) | 网络中个体会话的准入 | |
CN104105096B (zh) | 一种ipc设备的无线接入方法 | |
US20160242033A1 (en) | Communication service using method and electronic device supporting the same | |
MX2012000268A (es) | Metodos y aparatos para registrar con redes externas en entornos de redes inalambricas. | |
WO2010148609A1 (zh) | 一种蜂窝移动通信网络的接入方法和系统 | |
WO2009000206A1 (fr) | Procédé et système de commande d'accès de nœud initial b | |
CN103297968B (zh) | 一种无线终端认证的方法、设备及系统 | |
JP2018170010A (ja) | 移動通信システムに用いられる端末認証方法及び装置 | |
KR101680715B1 (ko) | 개인 네트워크 등록을 위한 장치 및 방법 | |
US20120275443A1 (en) | Efficient creation of wlan connections | |
US10257036B2 (en) | Secure plug and play configuration of wireless distribution system (WDS) Wi-Fi range extenders | |
EP4055860B1 (en) | Open access in neutral host network environments | |
US8689303B1 (en) | Cookie-handling gateway | |
KR20140010206A (ko) | 라디오 주파수 대역을 고려한 무선네트워크 접속 장치 및 방법 | |
US20130304879A1 (en) | Configuration of an end device for an access to a wireless communication network | |
CN108541077B (zh) | 一种基于wps的智能硬件设备快速配网方法及系统 | |
JP2012244599A (ja) | 無線lan接続システム | |
US20160353489A1 (en) | Opportunistic data transfer |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20180406 Termination date: 20200313 |
|
CF01 | Termination of patent right due to non-payment of annual fee |