一种移动设备进行中继的方法和装置的制造方法_3

文档序号:9618460阅读:来源:国知局
) Freq = 2417 (信道 2) Freq = 2422 (信道 3)
[0145]Freq = 2427(信道 4) Freq = 2432 (信道 5) Freq = 2437 (信道 6)
[0146]Freq = 2442(信道 7) Freq = 2447 (信道 8) Freq = 2452 (信道 9)
[0147]Freq = 2457(信道 10) Freq = 24似(信道 11) Freq = 2467 (信道 1?
[0148]Freq = 2472 (信道 I3)
[0149]中继功能的使用,一般需要保证stat1n的第一信道和P2P第二信道互不干扰,否贝1J,中继功能因信道设置引起的信道干扰而导致的转发数据能力较低、中继性能较差的问题。
[0150]当频道类型为2.4G频段时,可以将第一信道偏移至少5个信道,作为第二信道。
[0151]假设X为AP的第一信道,Y为中继设备(即移动设备)的第二信道,两者满足以下关系式:
[0152]Y 彡 X+5,或,Y 彡 X-5 ;
[0153]其中,X、Y为正整数,当Y〈1或Y>13时,Υ无效,需要丢弃。
[0154]当频道类型为5G频段时,将与第一信道作不同的信道作为第二信道。
[0155]然后,在UI (User Interface,用户界面)提示用户输入中继设备(即移动设备)的SSID (服务集标识)和密码。
[0156]若用户在UI输入了 SSID和密码,则使用该SSID和密码,否则,使用默认的SSID和密码。
[0157]计算SSID的第一长度和密码的第二长度,用作发送中继指令。
[0158]P2P 目前有两种模式:P2P group 和 P2P client。
[0159]P2P使得多个W1-Fi设备在没有AP的情况下也能构成一个网络(P2P Network,也被称之为P2P Group)并相互通信。
[0160]在组建P2P Group之前,智能终端都是一个一个的P2P Device (P2P设备)。
[0161]当这些P2P Device之间完成P2P协商后,那么其中将有一个Device来扮演GO (Group Owner)的角色(即充当AP),而其他Device来扮演Client的角色。
[0162]原始的P2P group的函数为:
[0163]p2p_ctrl_group_add(struct wpa_supplicant*wpa_s, char*cmd)
[0164]在此P2P group函数中,无法发送信道、SSID、密码等参数。
[0165]本发明实施例修改W1-Fi协议栈,强制设置P2P为group模式,并且该group模式可以按照用户的需求设置SSID和密码,以便中继设备(即移动设备)被外部的电子设备扫描到以后可以通过SSID识别,通过密码保证通信的安全。
[0166]具体而言,在本发明实施例中,在APP添加了网络服务supp 1 i cant,在supp 1 i cant服务中添加了一个接口,将W1-Fi协议栈Wpa_supplicant中扩展了 P2P_GR0UP_ADD指令:
[0167]wpas_p2p_group_add_with_ssid (wpa_s, 1, freq, ht40, ssid, passphrase, ssid_len,passphrase_len)
[0168]其中,freq为第二信道,ssid_len 为第一长度,passphrase 为密码,passphrase_len为第二长度。
[0169]扩展后的P2P group函数可以实现发送信道、SSID、密码等参数的功能。
[0170]中继指令发送后,中继设备(即移动设备)发出的广播帧就会携带SSID,其它电子设备扫描到以后就可以用SSID和密码进行连接了。
[0171]步骤103,开启包转发功能,以支持在移动设备中W1-Fi的不同节点之间转发数据包;
[0172]在具体实现中,可以通过echo属性值开启包转发功能。
[0173]echo l>/proc/sys/net/ipv4/ip_forward
[0174]包转发,是允许数据包从一个设备转发到另一个设备。
[0175]在本发明实施例中,打开包转发功能,支持数据包在stat1n与P2P之间相互转发。
[0176]步骤104,调用中继应用中的地址表服务,发送包转发的配置信息至W1-Fi模组,以在stat1n节点与P2P节点之间转发数据包。
[0177]在实际应用中,可以调用中继应用中的地址表服务iptables发送路由表至Wi_Fi模组,该路由表中包括P2P节点的第一 IP地址与stat1n节点的第二 IP地址的路径;
[0178]可以调用中继应用中的地址表服务iptables发送地址转换功能NAT (NetworkAddress Translat1n)的配置信息至Wi_Fi模组,NAT将自动修改IP报文的源IP地址和目的IP地址,以对P2P节点的第一 IP地址进行伪装。
[0179]当然,在发送路由表和NAT之前,还可以清除在先的路由表。
[0180]Iptables、NAT配置的配置信息如下:
[0181]#remove old rules (清理在先的路由表)
[0182]iptables -F
[0183]iptables _t filter _F
[0184]iptables _t nat _F
[0185]#Bring up NAT rules
[0186]iptables _t nat -A P0STR0UTING _s 192.168.49.0/24 -d 0.0.0.0/0 -jMASQUERADE
[0187]其中,假设中继设备(即移动设备)的IP段是192.168.49.0,发送Bring up NATrules可以将192.168.49.0/24网段为源地址的数据包进行重新封包、解包处理,伪装为0.0.0.0/0的源地址,转发到stat1n上。
[0188]在本发明的一个实施例中,该方法还可以包括如下步骤:
[0189]步骤105,调用中继应用中的地址表服务,发送域名系统DNS的配置信息至Wi_Fi模组,以将P2P节点接收的数据包进行转发。
[0190]在具体实现中,可以调用中继应用中的地址表服务iptable,发送基于传输控制协议TCP的域名系统DNS的网关地址至W1-Fi模组;
[0191]命令格式为:
[0192]iptables _t nat -1 PREROUTING _i (中继设备名)_p tcp —dport 53 -j DNAT—to-destinat1n(路由器网关)
[0193]可以调用中继应用中的地址表服务iptable,发送基于开放式系统互联协议UDP的域名系统DNS的网关地址至W1-Fi模组。
[0194]命令格式为:
[0195]iptables _t nat -1 P RE ROUTING -1 (中继设备名)-p udp —dport 53 -j DNAT—to-destinat1n(路由器网关)
[0196]如上,给中继设备(即移动设备)添加TCP和UDP的DNS网关地址,在配置DNS后,输入的IP地址会被DNS服务器解析,实现网络通信。
[0197]本发明实施例通过stat 1n连接AP进行通信,通过P2P连接电子设备进行通信,通过在stat1n和P2P之间转发数据,在移动设备中实现了中继功能,由于移动设备已广发普及,即中继器可以复用已有的移动设备,避免配置额外的硬件,大大降低了成本,并且,应用在中继应用中,避免对系统进行修改,大大提高了可移植性,同时,由于移动设备无需固定的电源插口供电,便携性很好,可以根据信号的强弱调节位置,大大增强了中继的无线信号。
[0198]参照图3,示出了本发明的一种基于移动设备进行中继的方法实施例2的步骤流程图,具体可以包括如下步骤:
[0199]步骤301,当一个或多个电子设备通过广播的登录信息验证成功时,在P2P节点接入一个或多个电子设备;
[0200]在具体实现中,中继设备(即移动设备)可以视为一个AP,它周期性地广播Beacon帧,其他stat1n设备扫描到该Beacon帧就可以得到中继设备(即移动设备)的SSIDo
[0201]当接收到一个或多个电子设备针对登录信息的服务集标识发送的申请请求时,向所述一个或多个电子设备返回应答消息challenge text ;
[0202]当接收到一个或多个电子设备发送的连接请求时,根据登录信息的密码的第二长度、验证连接请求中密码与登录信息的密码是否相同;
[0203]若是,则接入一个或多个电子设备,例如图2所示的电子设备stat1n Ustat1n2、stat1n 3σ
[0204]步骤302,在P2P节点中接收到电子设备发送的数据包;
[0205]当相连的电子设备与外部的目标设备进行通信时,电子设备向中继设备(即移动设备)发送数据包。
[0206]步骤303,将所述数据包从P2P节点转发至stat1n节点;
[0207]在具体实现中,判断所述数据包源地址是否为P2P节点的第一 IP地址,如192.168.49.0 ;若是,则基于NAT的配置信息,将第一 IP地址伪装成目标IP地址,0.0.0.0 ;
[0208]在路由表中查找第一 IP地址对应的第二 I
当前第3页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1