CN106211141A - 一种无线局域网漫游站点的流的转发方法及装置 - Google Patents

一种无线局域网漫游站点的流的转发方法及装置 Download PDF

Info

Publication number
CN106211141A
CN106211141A CN201510218813.2A CN201510218813A CN106211141A CN 106211141 A CN106211141 A CN 106211141A CN 201510218813 A CN201510218813 A CN 201510218813A CN 106211141 A CN106211141 A CN 106211141A
Authority
CN
China
Prior art keywords
data message
address
stream
sta
forwarding
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
Application number
CN201510218813.2A
Other languages
English (en)
Other versions
CN106211141B (zh
Inventor
林云云
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201510218813.2A priority Critical patent/CN106211141B/zh
Publication of CN106211141A publication Critical patent/CN106211141A/zh
Application granted granted Critical
Publication of CN106211141B publication Critical patent/CN106211141B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种无线局域网漫游站点的流的转发方法及装置,用以解决现有技术中存在的STA流量转发效率低、且浪费网络带宽资源、漫游用户业务中断率高的问题。该方法包括:第一AP接收STA发送的第一数据报文,所述第一AP为所述STA漫游后关联的AP,所述第一数据报文的源IP地址为第二AP所在的子网中的IP地址,所述第二AP为所述STA漫游前关联的AP;所述第一数据报文为在所述STA关联第一AP后,所述STA新产生的流中的数据报文;所述第一AP将所述第一数据报文的所述源IP地址转换为指定IP地址,所述指定IP地址为所述第一AP所在的子网中的IP地址,并转发转换后的所述第一数据报文。

Description

一种无线局域网漫游站点的流的转发方法及装置
技术领域
本发明涉及通信技术领域,尤其涉及一种无线局域网漫游站点的流的转发方法及装置。
背景技术
无线局域网(英文:wireless local area network,简称:WLAN)中的终端作为WLAN的站点(英文:station,简称:STA)在WLAN中漫游是指,保证业务不中断的前提下,STA在接入点(英文:access point,简称AP)间的移动。
在WLAN中,如果AP的数目比较多,可能被多个无线局域网控制器管理,因此STA漫游前和漫游后所关联的AP可能被相同的无线局域网控制器管理,如图1所示,也可能被不同的无线局域网控制器管理,如图2所示。图2中,家乡AP(英文:home AP,简称HAP)指STA在进入WLAN后首次关联的AP;管理该HAP是第一无线局域网控制器。外地AP(英文:foreign AP,简称FAP)是指STA漫游后关联的AP,管理该FAP的是第二无线局域网控制。
漫游分为两层漫游和三层漫游。二层漫游是指STA在一个子网中漫游,即漫游前STA关联的AP与漫游后STA关联的AP在同一个子网中。因此,二层漫游下,子网的互联网协议(Internet Protocol,简称IP)地址前缀不发生变化。三层漫游中,STA从一个子网漫游到另一个子网,两个子网的IP地址前缀不同。在三层漫游场景下,需要保证STA的业务不中断,即STA的IP地址不能发生变化。但是由于STA已经由一个子网漫游到另一个子网,所述STA的IP地址为漫游前的子网中的IP地址,因此,STA产生的流在漫游后所在的网络中不能由漫游后的子网的网关转发。为此一般以STA在WLAN中首次接入的子网中的一台设备作为家乡代理,将漫游后的STA的流通过隧道转发到家乡代理,再由家乡代理转发给所述STA首次接入的子网的网关。以HAP为家乡代理为例,漫游后STA产生的流先通过漫游后关联的FAP,然后通过FAP与管理该FAP的第二无线局域网控制器之间的隧道转发给第二无线局域网控制器,再由第二无线局域网控制器通过第二无线局域网控制器与第一无线局域网控制器之间的隧道转发给第一无线局域网控制器,然后由第一无线局域网控制器通过第一无线局域网控制器与HAP之间的隧道转发给HAP,由HAP通过自身所在的子网的网关转发出去。
因此,通过多个隧道进行转发,导致转发路径存在较多迂回:在用户发生跨网关漫游场景下,隧道由三段拼接而成,STA在发生漫游后产生的流需要经过第一无线局域网控制器和第二无线局域网控制器才能到达家乡代理。因此在AP和管理该AP的无线局域网控制器距离较远时,STA的流的转发效率低、且浪费网络带宽资源,同时会占用非漫游业务流量的带宽。
发明内容
本发明实施例提供一种局域网漫游站点的流的转发方法及装置,用以解决STA流量转发效率低且浪费网络带宽资源的问题。
第一方面,本发明实施例提供了一种无线局域网漫游站点的流的转发方法,包括:
第一接入点AP接收站点STA发送的第一数据报文,所述第一AP为所述STA漫游后关联的AP,所述第一数据报文的源IP地址为第二AP所在的子网中的IP地址,所述第二AP为所述STA漫游前关联的AP;所述第一数据报文为所述STA关联第一AP后,所述STA新产生的流中的数据报文;
所述第一AP将所述第一数据报文的所述源IP地址转换为指定IP地址,并转发转换后的所述第一数据报文,所述指定IP地址为所述第一AP所在的子网中的IP地址。
结合第一方面,在第一方面的第一种可能的实现方式中,还包括:
第一AP接收所述STA发送的第二数据报文,所述第二数据报文为第二AP的旧流中的数据报文,所述第二AP的旧流为在所述STA关联所述第二AP的情况下,所述STA产生的流;
所述第一AP将所述第二数据报文通过所述第一AP与所述第二AP之间的隧道发送给所述第二AP。
结合第一方面的第一种可能的实现方式,在第一方面的第二种可能的实现方式中,所述第一AP接收STA发送的第二数据报文前,所述的方法还包括:
所述第一AP接收所述第二AP的旧流的元组和所述第二AP的IP地址;
所述第一AP在流转发表中建立第一流转发表项,所述第一流转发表项的键值为所述第二AP的旧流的元组,所述第一流转发表项的内容包括第一AP与第二AP之间的隧道的隧道目的IP地址,所述隧道目的IP地址为所述第二AP的IP地址;
所述第一AP将所述第二数据报文通过所述第一AP与所述第二AP之间的隧道发送给第二AP,包括:
所述第一AP在流转发表中查找与所述第二数据报文匹配的流转发表项,所述第一AP查找到与所述第二数据报文匹配的流转发表项为所述第一流转发表项,获取所述第一流转发表项中的所述第二AP的IP地址;
所述第一AP使用隧道目的IP地址为所述第二AP的IP地址的隧道发送所述第二数据报文。
结合第一方面和第一方面的第一种至第二种可能的实现方式中的任意一种,在第一方面的第三种可能的实现方式中,所述第一AP将所述第一数据报文的所述源IP地址转换为所述指定IP地址,包括:
所述第一AP在流转发表中查找与所述第一数据报文匹配的流转发表项,当所述第一AP查找到与所述第一数据报文匹配的流转发表项时,获取所述流转发表项中的端口号,所述第一AP将所述第一数据报文的所述源IP地址转换为所述指定IP地址,并且将所述第一数据报文的源端口号转换为所述第一数据报文匹配的所述流转发表项中的端口号。
结合第一方面和第一方面的第一种至第二种可能的实现方式中的任意一种,在第一方面的第四种可能的实现方式中,所述第一AP将所述第一数据报文的所述源IP地址转换为所述指定IP地址,包括:
所述第一AP在流转发表中查找与所述第一数据报文匹配的流转发表项,当所述流转发表中缺乏与所述第一数据报文匹配的流转发表项时,所述第一AP为所述第一数据报文所属的流分配端口号,所述第一AP将所述第一数据报文的所述源IP地址转换为所述指定IP地址,并且将所述第一数据报文的源端口号转换为分配的所述端口号;
所述第一AP在流转发表中建立第二流转发表项,所述第二流转发表项的键值为所述第一数据报文所属的流的元组,所述第二流转发表项的内容包括分配的所述端口号。
结合第一方面的第四种可能的实现方式,在第一方面的第五种可能的实现方式中,还包括:
所述第一AP在流转发表中建立第三流转发表项,所述第三流转发表项的键值为转换后的所述第一数据报文所属的流的元组,所述第一流转发表项的内容包括转换前的所述第一数据报文的所述源IP地址和转换前的所述第一数据报文的源端口号;
所述第一AP接收发送给所述STA的第三数据报文,所述第三数据报文属于转换后的所述第一数据报文所属的流,所述第三数据报文的目的IP地址为所述指定IP地址,所述第三数据报文的目的端口号为分配的所述端口号;
所述第一AP将所述第三数据报文的目的IP地址转换为述第一数据报文的所述源IP地址,将所述第三数据报文的目的端口号转换为所述转换前的第一数据报文的源端口号;
所述第一AP转发转换后的所述第三数据报文。
第二方面,本发明实施例提供了一种无线局域网漫游站点的流的转发装置,所述装置设置于第一AP中,所述第一AP为所述STA漫游后关联的AP,所述装置包括:
接收模块,用于接收站点STA发送的第一数据报文,所述第一数据报文的源IP地址为第二AP所在的子网中的IP地址,所述第二AP为所述STA漫游前关联的AP;所述第一数据报文为所述STA关联第一AP后,所述STA新产生的流中的数据报文;
处理模块,用于将所述接收模块接收到的第一数据报文的所述源IP地址转换为指定IP地址;
发送模块,用于转发所述处理模块转换后的所述第一数据报文,所述指定IP地址为所述第一AP所在的子网中的IP地址。
结合第二方面,在第二方面的第一种可能的实现方式中,所述接收模块,还用于接收所述STA发送的第二数据报文,所述第二数据报文为第二AP的旧流中的数据报文,所述第二AP的旧流为在所述STA关联所述第二AP的情况下,所述STA产生的流;
所述发送模块,还用于将所述接收模块接收到的所述第二数据报文通过所述第一AP与所述第二AP之间的隧道发送给所述第二AP。
结合第二方面的第一种可能的实现方式,在第二方面的第二种可能的实现方式中,所述接收模块,还用于接收STA发送的第二数据报文前,接收所述第二AP的旧流的元组和所述第二AP的IP地址;
所述处理模块,还用于在流转发表中建立第一流转发表项,所述第一流转发表项的键值为所述第二AP的旧流的元组,所述第一流转发表项的内容包括第一AP与第二AP之间的隧道的隧道目的IP地址,所述隧道目的IP地址为所述第二AP的IP地址;并在流转发表中查找与所述第二数据报文匹配的流转发表项,查找到与所述第二数据报文匹配的流转发表项为所述第一流转发表项,获取所述第一流转发表项中的所述第二AP的IP地址;
所述发送模块将所述第二数据报文通过所述第一AP与所述第二AP之间的隧道发送给所述第二AP具体为所述发送模块使用隧道目的IP地址为所述第二AP的IP地址的隧道发送所述第二数据报文。
结合第二方面和第二方面的第一种至第二种可能的实现方式中的任意一种,在第二方面的第三种可能的实现方式中,所述处理模块将所述第一数据报文的所述源IP地址转换为所述指定IP地址,具体为:
在流转发表中查找与所述第一数据报文匹配的流转发表项,当查找到与所述第一数据报文匹配的流转发表项时,获取所述流转发表项中的端口号,将所述第一数据报文的所述源IP地址转换为所述指定IP地址,并且将所述第一数据报文的源端口号转换为所述第一数据报文匹配的所述流转发表项中的端口号。
结合第二方面和第二方面的第一种至第二种可能的实现方式中的任意一种,在第二方面的第四种可能的实现方式中,所述处理模块将所述第一数据报文的所述源IP地址转换为所述指定IP地址,具体为:
在流转发表中查找与所述第一数据报文匹配的流转发表项,当所述流转发表中缺乏与所述第一数据报文匹配的流转发表项时,所述第一AP为所述第一数据报文所属的流分配端口号,所述第一AP将所述第一数据报文的所述源IP地址转换为所述指定IP地址,并且将所述第一数据报文的源端口号转换为分配的所述端口号;并在流转发表中建立第二流转发表项,所述第二流转发表项的键值为所述第一数据报文所属的流的元组,所述第二流转发表项的内容包括分配的所述端口号。
结合第二方面的第四种可能的实现方式,在第二方面的第五种可能的实现方式中,所述处理模块,还用于在流转发表中建立第三流转发表项,所述第三流转发表项的键值为转换后的所述第一数据报文所属的流的元组,所述第一流转发表项的内容包括转换前的所述第一数据报文的所述源IP地址和转换前的所述第一数据报文的源端口号;
所述接收模块,还用于接收发送给所述STA的第三数据报文,所述第三数据报文属于转换后的所述第一数据报文所属的流,所述第三数据报文的目的IP地址为所述指定IP地址,所述第三数据报文的目的端口号为分配的所述端口号;
所述处理模块,还用于将所述接收模块接收到的所述第三数据报文的目的IP地址转换为述第一数据报文的所述源IP地址,将所述第三数据报文的目的端口号转换为所述转换前的第一数据报文的源端口号;
所述发送模块,还用于转发所述处理模块转换后的所述第三数据报文。
由于STA在最初接入WLAN时,STA的IP地址就已经确定为该最初接入的AP所在的子网中的IP地址,在漫游后新产生的流的数据报文的源IP地址是STA的IP地址,在漫游后接入的AP无法将该数据报文在该AP所在的子网中转发,都需要漫游隧道转发。利用本发明实施例提供的方案,STA新产生的流不需要通过漫游隧道进行转发,而是将该流的数据报文的源IP地址网络地址转换(英文:network address translation,简称:NAT),NAT后的源IP地址为STA漫游后关联的AP的子网中的IP地址,可以直接在该漫游后的子网中转发,从而提高了转发效率。新产生的流不需要绕道经过无线局域网控制器,所以网络带宽的资源得到了合理利用。
附图说明
图1为一种STA漫游示意图;
图2为另一种STA漫游示意图;
图3为本发明实施例提供的一种无线局域网漫游站点的流的转发方法流程图;
图4为本发明实施例提供的流转发表示意图;
图5为本发明实施例提供的另一种流转发表示意图;
图6为本发明实施例提供的又一种流转发表示意图;
图7为本发明实施例提供的再一种流转发表示意图;
图8为本发明实施例提供的另一种无线局域网漫游站点的流的转发方法流程图;
图9为本发明实施例提供的一种无线局域网漫游站点的流的转发装置示意图;
图10为本发明实施例提供的一种无线局域网漫游站点的流的转发设备示意图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述。
本发明实施例提供一种无线局域网漫游站点的流的转发方法及装置,用以解决STA流量转发效率低且浪费网络带宽资源的问题。其中,方法和装置是基于同一发明构思的,由于方法及装置解决问题的原理相似,因此装置与方法的实施可以相互参见,重复之处不再赘述。
本发明实施例通过将STA产生的流进行区分,分为:漫游前STA在原关联的AP已经产生的流和漫游后在新关联的AP新产生的流。并对STA产生的两种流进行不同处理:对漫游前在原关联的AP的产生的流仍然通过漫游隧道转发,从而能够保证已有业务不中断,对漫游后在新关联的AP上新产生的流进行NAT,将漫游后新产生的流的各个数据报文的源IP地址转换为漫游地子网中的IP地址。由于STA在最初关联某个AP时,STA的IP地址就被确定为该最初关联的AP所在的子网中的IP地址,在漫游后新产生的流中的数据报文的源IP地址是STA的IP地址,在漫游后关联的AP所在的子网中无法直接通过该漫游后关联AP对应的网关进行转发。因此漫游后关联的AP将该源IP地址转换为漫游后关联的AP所在的子网中的IP地址。
本发明实施例中是基于流转发的方式将数据报文转发出去的。针对流转发具体说明如下:
站点发送的各个具有相同的元组的数据报文组成流,设备接收到的站点发送的流的第一个数据报文后,对该数据报文中的元组查一般的转发表(例如媒体接入控制(英文:media access control,简称:MAC)表、访问控制列表(英文:access control list,简称ACL)等)得到对该数据报文执行的动作。并根据查表结果在流转发表中建立一条流转发表项,该流转发表项包括键值和内容。键值用于提供对后续数据报文查找流转发表中流转发表项的索引信息,一般包括数据报文中的元组,例如由数据报文的源IP地址、目的IP地址、协议号、源端口号和目的端口号组成的五元组。内容包括对于数据报文执行的动作信息,例如包括下一跳IP地址或MAC地址、出接口索引、业务质量(英文:qualityof service,简称:QoS)等。
一个流除第一个数据报文外的其他数据报文可以称为该流的后续数据报文。设备接收到后续数据报文时,用数据报文中元组在流转发表中查找键值匹配该元组的流转发表项,如果找到匹配该元组的表项则该数据报文为后续报文,如果没有找到键值匹配该元组的表项,则该数据报文为一个新流的第一个数据报文。若为后续数据报文,则设备直接根据匹配的流转发表项包括的内容将该后续数据报文进行转发。若为第一数据报文,设备根据建立的流转发表项中的内容将该第一数据报文转发。
本发明实施例提供了一种局域网漫游站点的流的转发方法,如图3所示,该方法包括:
步骤301,第一AP接收STA发送的第一数据报文,所述第一AP为所述STA漫游后关联的AP,所述第一AP为所述STA漫游后关联的AP,所述第一数据报文的源IP地址为第二AP所在的子网中的IP地址,所述第二AP为所述STA漫游前关联的AP,所述第一数据报文为在所述STA关联第一AP后所述STA新产生的流中的数据报文。
其中,第一AP与第二AP处于不同的子网中。
步骤302,所述第一AP将所述第一数据报文的所述源IP地址转换为指定IP地址,所述指定IP地址为所述第一AP所在的子网中的IP地址,并转发转换后的所述第一数据报文。
其中,指定IP地址是该第一AP的专用于NAT的IP地址。指定IP地址可以是静态设置的,也可以是动态主机设置协议(英文:Dynamic HostConfiguration Potocol,简称:DHCP)服务器为该第一AP分配的。DHCP服务器可以由管理该第一AP的无线局域网控制器实现。可以在第一AP启动时,由DHCP服务器为该第一AP分配一个IP地址作为指定IP地址。也可以在有STA关联该第一AP时,DHCP服务器为该第一AP分配一个IP地址作为指定IP地址。还可以在有STA漫游到第一AP时,DHCP服务器为该第一AP分配一个IP地址作为指定IP地址。该第一AP的专用于NAT的IP地址可以只有一个,即该指定IP地址;该第一AP也可以有多个专用于NAT的IP地址,例如第一指定IP地址和第二指定IP地址。
第一AP在接收到数据报文后在流转发表中查找与所述该数据报文匹配的流转发表项。如果第一AP查找到与该数据报文匹配的流转发表项,则根据该流转发表项的内容处理该数据报文。与数据报文匹配的流转发表项的键值为数据报文所属的流的元组。该数据报文是流中的后续数据报文,该流的流转发表项就是与该数据报文匹配的流转发表项。
STA关联第一AP后新产生的流可以称为新流。STA关联第一AP之前已产生的且持续到STA关联到第一AP后的流可以称为旧流。与数据报文匹配的流转发表项可以是旧流的流转发表项,也可以是新流的流转发表项。
如果第一AP查找不到与该数据报文匹配的流转发表项,第一AP为该数据报文所属的流建立其流转发表项。由于没有与该数据报文匹配的流转发表项,该数据报文是STA发送该数据报文时产生的流的第一个数据报文,因此该流为新流。
第一数据报文是新流中的数据报文。第一数据报文可以是新流的第一个数据报文,也可以是该流的后续数据报文。如果第一数据报文是新流的第一个数据报文,第一AP要为该新流建立流转发表项。该流转发表项中包括NAT所需的参数,该新流的后续数据报文根据该流转发表项做NAT并转发。第一AP可以根据第一数据报文的目的地址,转发转换后的第一数据报文,具体可以转发给第一AP所在的子网的网关,然后由网关转发出去,或者转发给第一AP所在的子网中的其他STA。第一AP也可以不管第一数据报文的目的地址,将第一数据报文转发给管理该第一AP的无线局域网管理器,然后由无线局域网管理器根据第一数据报文的目的地址转发该第一数据报文。
由于STA在最初接入WLAN时,STA的IP地址就已经确定为STA此时关联的AP所在的子网中的IP地址,漫游后新产生的流的数据报文的源IP地址是STA的IP地址,漫游后STA关联的AP将该数据报文的源IP地址NAT为STA漫游后关联的AP所在的子网中的IP地址,然后直接在第一AP所在的子网中转发,从而提高了转发效率,网络带宽的资源得到了合理利用。
如果STA关联第二AP期间产生的流在漫游发生后尚未终止,STA关联第一AP期间也会产生并发送该流中的数据报文。此时,第一AP接收所述STA发送的第二数据报文,所述第二数据报文为第二AP的旧流中的数据报文。第二AP的旧流指漫游到第一AP的STA过去在关联第二AP期间产生的流,并且该流在漫游关联第一AP后尚未终止。第二数据报文的元组和所述STA关联第二AP期间发送的第二AP的旧流中的数据报文的元组相同。所述第一AP将所述第二数据报文通过所述第一AP与所述第二AP之间的隧道发送给所述第二AP。
如果STA关联第二AP期间产生的流在漫游发生时尚未终止,第二AP的流转发表中仍然保留有该流的流转发表项。为避免用户业务中断,第一AP将第二AP的旧流中的数据报文发送给第二AP,再由第二AP根据其流转发表中该流的流转发表项继续处理该数据报文。为了识别哪些报文属于第二AP的旧流,STA漫游后,第二AP的旧流的元组和第二AP的地址被发送给第一AP。所述第一AP接收第二AP的旧流的元组和所述第二AP的IP地址。所述第一AP在流转发表中建立第一流转发表项,所述第一流转发表项的键值为所述第二AP的旧流的元组,所述第一流转发表项的内容包括第一AP与第二AP之间的隧道的隧道目的IP地址,所述隧道目的IP地址为所述第二AP的IP地址。
其中,第一AP与第二AP之间的隧道是预先建立的。
所述第一AP将所述第二数据报文通过所述第一AP与所述第二AP之间的隧道发送给第二AP,具体可以通过以下方式:
所述第一AP在流转发表中查找与所述第二数据报文匹配的流转发表项,所述第一AP查找到与所述第二数据报文匹配的流转发表项为所述第一流转发表项,获取所述第一流转发表项中的所述第二AP的IP地址。所述第一AP使用隧道目的IP地址为所述第二AP的IP地址的隧道发送所述第二数据报文。
元组可以包括源IP地址和目的IP地址,还可以包括流标签。或者包括协议号、源端口号和目的端口号等等。例如元组为五元组、包括源IP地址、目的IP地址、协议号、源端口号和目的端口号。
其中,所述第一AP接收第二AP的旧流的元组,具体可以通过以下方式:
第一种实现方式:
所述第一AP接收第二AP的旧流的流转发表项。然后获取该流转发表项的键值中的元组。第二AP的旧流的流转发表项来自第二AP。其中,第二AP发送其流转发表中仍然保留的漫游到第一AP的STA的所有流转发表项。由于第二AP的旧流是漫游到第一AP的STA过去在关联第二AP期间产生的流,并且该流在STA发生漫游后尚未终止,第二AP发送的流转发表项中包括第二AP的旧流的流转发表项。第二AP可以直接向第一AP发送第二AP的旧流的流转发表项,也可以经过无线局域网控制器向第一AP发送第二AP的旧流的流转发表项。
第二种实现方式:
所述第一AP直接接收第二AP的旧流的元组。
第二AP的旧流的元组来自第二AP。第二AP可以直接向第一AP发送第二AP的旧流的元组;第二AP也可以经过无线局域网控制器向第一AP发送第二AP的旧流的元组;第二AP还可以向无线局域网控制器发送第二AP的旧流的流转发表项,无线局域网控制器提取第二AP的旧流的流转发表项中的元组,向第一AP发送第二AP的旧流的元组。第二AP可以提取其流转发表中仍然保留的漫游到第一AP的STA的所有流转发表项的各个元组。第二AP提取的流转发表项的元组包括第二AP的旧流的元组。
所述第一AP接收到STA发送的第一数据报文为新流的第一个数据报文,所述第一AP将所述第一数据报文的所述源IP地址转换为所述指定IP地址,可以通过以下方式实现:
第一种实现方式:
所述第一AP在流转发表中查找与所述第一数据报文匹配的流转发表项,当所述流转发表项中缺乏与所述第一数据报文匹配的流转发表项时,所述第一AP获取该STA的指定IP地址,所述第一AP将所述第一数据报文的所述源IP地址转换为获取的指定IP地址。如果第一AP尚未为该STA分配过指定IP地址,即第一数据报文是该STA关联到第一AP后产生的第一个新流的第一个数据报文,第一AP为该STA分配一个指定IP地址,并记录该STA的指定IP地址。该指定IP地址是第一AP的专用于NAT的IP地址中尚未被分配给其他STA的指定IP地址。如果第一AP已经为该STA分配了指定IP地址,即第一数据报文是该STA关联到第一AP后产生的第一个新流之后产生的其他新流的第一个数据报文,第一AP提取记录的该STA的指定IP地址。
所述第一AP在流转发表中为该第一数据报文的所属的流建立第二流转发表项,所述第二流转发表项的键值为所述第一数据报文所属的流的元组。第二流转发表项的内容包括第一数据报文的源IP地址和该STA的指定IP地址,如图4所示的流转发表。图4中,STA产生的一个新流的五元组:源IP地址为1.1.1.10、目的IP地址为A1、源端口号为80、目的端口号为B1、协议号为C1,指定IP地址为2.2.2.2。该STA产生的另一个新流的五元组:源IP地址为1.1.1.10、目的IP地址为A2、源端口号为80、目的端口号为B2、协议号为C2,指定IP地址为2.2.2.2,图4中以第一AP对一个STA的不同流只使用一个指定IP地址为例。第一AP也可以为一个STA的多个流使用不同的指定IP地址。图4中另外2个STA的指定IP地址各不相同。
其中,当所述流转发表项中缺乏与所述第一数据报文匹配的流转发表项时,所述第一AP获取该STA的指定IP地址,并根据第一数据报文的目的IP地址通过查地址解析协议(英文:Address Resolution Protocol,简称ARP)表得到对应的MAC地址。所述第一AP将所述第一数据报文的所述源IP地址转换为所述指定IP地址,并将所述第一数据报文的目的MAC地址转换为第一数据报文的目的IP地址对应的MAC地址。则建立的第二流转发表项的内容还包括第一数据报文的目的MAC地址以及转换后的目的MAC地址。NAT后的目的MAC地址为所述第一数据报文的目的IP地址对应的MAC地址。
第二种实现方式:
所述第一AP在流转发表中查找与所述第一数据报文匹配的流转发表项,当所述流转发表项中缺乏与所述第一数据报文匹配的流转发表项时,所述第一AP获取该STA的指定IP地址,所述第一AP为所述第一数据报文所属的流分配端口号,所述第一AP将所述第一数据报文的所述源IP地址转换为所述指定IP地址,并且将所述第一数据报文的源端口号转换为分配的所述端口号。
所述第一AP在流转发表中建立第二流转发表项,所述第二流转发表项的键值为所述第一数据报文所属的流的元组,所述第二流转发表项的内容包括分配的所述端口号。
具体的,还可以将指定的IP地址保存在第二流转发表项的内容中,例如图5所示流转发表所示。图5中,STA产生的一个新流的五元组:源IP地址为1.1.1.10、目的IP地址为A1、源端口号为80、目的端口号为B1、协议号为C1,指定IP地址为2.2.2.2,第一AP为该流分配的端口号为3761。该STA产生的另一个新流的五元组:源IP地址为1.1.1.10、目的IP地址为A2、源端口号为80、目的端口号为B2、协议号为C2,指定IP地址为2.2.2.2,第一AP为该流分配的端口号和上一个流转发表项中的不同,为3762。图5中以第一AP只使用一个指定的IP地址为例,所有流被分配的端口号都互不相同。第一AP也可以有多个专用于NAT的IP地址,例如第一指定的IP地址和第二指定的IP地址,则如果两个流的指定的IP地址不同,为这两个流分配的端口号可以相同。
可选地,如果第一AP只使用一个指定的IP地址,该指定的IP地址也可以作为默认IP地址而不需要记录在各个流转发表项的内容中。
其中,当所述流转发表项中缺乏与所述第一数据报文匹配的流转发表项时,所述第一AP获取该STA的指定IP地址,并根据第一数据报文的目的IP地址通过查ARP表得到对应的MAC地址。所述第一AP将所述第一数据报文的所述源IP地址转换为所述指定IP地址,并将所述第一数据报文的目的MAC地址转换为第一数据报文的目的IP地址对应的MAC地址。则建立的第二流转发表项的内容还包括第一数据报文的目的MAC地址以及转换后的目的MAC地址。如图6所示。转换后的目的MAC地址为所述第一数据报文的目的IP地址对应的MAC地址。
所述第一AP接收到STA发送的第一数据报文为新流的后续数据报文,所述第一AP将所述第一数据报文的所述源IP地址转换为所述指定IP地址,可以通过以下方式实现:
第一种实现方式:
所述第一AP在流转发表中查找与所述第一数据报文匹配的流转发表项,当所述第一AP查找到与所述第一数据报文匹配的第二流转发表项时,获取第一数据报文匹配的第二流转发表项中的指定IP地址。所述第一AP将所述第一数据报文的所述源IP地址转换为所述指定IP地址;其中,所述与所述第一数据报文匹配的所述第二流转发表项的键值为所述第一数据报文所属的流的元组。
具体的,所述第一AP在流转发表中查找与所述第一数据报文匹配的流转发表项,当所述第一AP查找到与所述第一数据报文匹配的第二流转发表项时,获取第一数据报文匹配的第二流转发表项中的指定IP地址。所述第一AP将所述第一数据报文的所述源IP地址转换为所述指定IP地址;若所述第二流转发表项的内容中还包括指定目的MAC地址时,则执行将所述第一数据报文的目的MAC地址转换为指定目的MAC地址,该指定目的MAC地址为所述第一数据报文的目的IP地址对应的目的MAC地址。其中,所述与所述第一数据报文匹配的所述第二流转发表项的键值为所述第一数据报文所属的流的元组。
第二种实现方式:
所述第一AP在流转发表中查找与所述第一数据报文匹配的流转发表项,当所述第一AP查找到与所述第一数据报文匹配的流转发表项为第二流转发表项时,获取与所述第一数据报文匹配的所述第二流转发表项中的端口号,所述第一AP将所述第一数据报文的所述源IP地址转换为所述指定IP地址,并且将所述第一数据报文的源端口号转换为所述第一数据报文匹配的所述流转发表项中的端口号。若所述第二流转发表项的内容中还包括指定目的MAC地址时,如图6所示,则执行将所述第一数据报文的目的MAC地址转换为所述指定目的MAC地址,该指定目的MAC地址为所述第一数据报文的目的IP地址对应的目的MAC地址。其中,所述与所述第一数据报文匹配的所述第二流转发表项的键值为所述第一数据报文所属的流的元组。
为了转发发往STA的数据报文,所述第一AP在建立第二流转发表项时还在流转发表中建立第三流转发表项,所述第三流转发表项的键值为转换后的所述第一数据报文所属的流的元组,所述第一流转发表项的内容包括转换前的第一数据报文的所述源IP地址和所述转换前的第一数据报文的源端口号。
所述第一AP接收网络侧发送的发送给所述STA的第三数据报文,所述第三数据报文属于转换后的所述第一数据报文所属的流,所述第三数据报文的目的IP地址为所述指定IP地址,所述第三数据报文的目的端口号为分配的所述端口号。
所述第一AP将所述第三数据报文的目的IP地址转换为述第一数据报文的所述源IP地址,将所述第三数据报文的目的端口号转换为所述转换前的第一数据报文的源端口号;
所述第一AP转发转换后的所述第三数据报文。
其中,所述第三数据报文所属的流也可以称为所述第一数据报文所属的流的反方向的流。例如,第三数据报文所属的流对应的业务是STA1发送数据报文给STA2,则所述第一数据报文所属的流对应的业务是STA2发送数据报文给STA1。
例如,所述第一数据报文所属的流的第二流转发表项如图5所示,则所述第三数据报文所属的流的第三流转发表项则如图7所示。
STA最初关联第二AP,之后漫游到第三AP,最后漫游到第一AP,第一AP为STA当前关联的AP。第一AP,第二AP和第三AP分别属于三个不同的子网。STA的IP地址为第二AP所在的子网中的IP地址。
第一AP接收第三AP的旧流的元组和第三AP的IP地址,第三AP的旧流为在STA关联第三AP的情况下,STA产生的流。
第一AP在流转发表中建立第四流转发表项,第四流转发表项的键值为第三AP的旧流的元组,第四流转发表项的内容包括第一AP与第三AP之间的隧道的隧道目的IP地址,该隧道目的IP地址为第三AP的IP地址。
第一AP接收第二AP的旧流的元组和第二AP的IP地址,第二AP的旧流为在STA关联第二AP的情况下,STA产生的流。
第一AP在流转发表中建立第一流转发表项,第一流转发表项的键值为第二AP的旧流的元组,第一流转发表项的内容包括第一AP与第二AP之间的隧道的隧道目的IP地址,该隧道目的IP地址为第二AP的IP地址。
第一AP接收所述STA发送的第四数据报文,第四数据报文为第三AP的旧流中的数据报文。
第一AP在流转发表中查找与第四数据报文匹配的流转发表项,第一AP查找到与所述第四数据报文匹配的流转发表项为第四流转发表项,获取第四流转发表项中的第三AP的IP地址。
第一AP使用隧道目的IP地址为第三AP的IP地址的隧道发送第四数据报文。
第一AP接收所述STA发送的第二数据报文,第二数据报文为第二AP的旧流中的数据报文。
第一AP在流转发表中查找与第二数据报文匹配的流转发表项,第一AP查找到与第二数据报文匹配的流转发表项为第一流转发表项,获取第一流转发表项中的第二AP的IP地址。
第一AP使用隧道目的IP地址为第二AP的IP地址的隧道发送第二数据报文。
第一AP接收STA发送的第一数据报文,第一数据报文的源IP地址为STA的IP地址。第一数据报文为STA关联第一AP后,STA新产生的流中的数据报文。第一数据报文为该STA新产生的流中的第一个数据报文。
第一AP在流转发表中查找与第一数据报文匹配的流转发表项,流转发表中缺乏与第一数据报文匹配的流转发表项。第一AP为第一数据报文所属的流分配端口号。第一AP将第一数据报文的源IP地址转换为指定IP地址。并且将第一数据报文的源端口号转换为分配的端口号。第一AP转发转换后的第一数据报文。
第一AP在流转发表中建立第二流转发表项,第二流转发表项的键值为第一数据报文所属的流的元组,第二流转发表项的内容包括分配的端口号。
第一AP接收STA发送的第五数据报文,第五数据报文的源IP地址为STA的IP地址。第五数据报文是第一数据报文所属的流的后续数据报文,即第五数据报文的元组和第一数据报文的元组相同。
第一AP在流转发表中查找与第五数据报文匹配的流转发表项。第一AP查找到的与第五数据报文匹配的流转发表项为第一数据报文所属的流的流转发表项,即第二流转发表项。第一AP获取所述第二流转发表项中的端口号。第一AP将第五数据报文的源IP地址转换为上述的指定IP地址,并且将第五数据报文的源端口号转换为所述第五数据报文匹配的流转发表项中的端口号,即第一AP为第一数据报文所属的流分配的端口号。
另外,第一AP确定在预设时长内接收到的各个数据报文与流转发表中的至少一个流转发表项不匹配,则删除至少一个流转发表项。由于某一流转发表项在预定时长内没有任何数据报文与其匹配的话,则说明该流转发表项对应的流已经终止,因为为了节省***资源,将该某一流转发表项删除。
下面结合具体应用场景对本发明实施例作具体说明。
假设STA(STA的IP地址为1.1.1.10)从AP1漫游到AP2,再由AP2漫游到AP3,AP3、AP2与AP1分别属于三个不同的子网。
漫游后关联AP3后,STA发送数据报文分别属于以下三个流:
(1)关联AP1的情况下,产生的流Session1。
(2)关联AP2的情况下,产生的流Session2。
(3)关联AP3的情况下,产生的流Session3。
其中,管理AP1的是第一无线局域网控制器,管理AP2的是第二无线局域网控制器,管理AP3的是第三无线局域网控制器。首先在STA在从AP1漫游到AP2再漫游到AP3,第一无线局域网控制器、第二无线局域网控制器以及第三无线局域网控制器均能感知到。
针对在AP1上已经建立的数据流量Session1,如图8所示:
步骤801:第三无线局域网控制器确定STA为漫游用户。
步骤802:完成STA产生的流的元组在漫游前后关联的AP上的同步。
具体地,STA产生的流的元组在漫游前后关联的AP上的同步是指:第三无线局域网控制器通知第二无线局域网控制器获取STA1产生的Session1的元组,第二无线局域网控制器在从AP2获取到Session1的元组后,第二无线局域网控制器再将Session1的元组发送给第三无线局域网控制器,再由第三无线局域网控制器下发到AP3。同理完成Session2的元组在漫游前后的AP之间的同步。
其中,由于STA在由AP1漫游到AP2时,第二无线局域网控制器已经通知第一无线局域网控制器获取STA1产生的Session1元组,第一无线局域网控制器在从AP1获取到Session1的元组后,将获取到的Session1的元组发送给第二无线局域网控制器,然后第二无线局域网控制器再将取到Session1元组发送给AP2。因此,STA再由AP2漫游到第二无线局域网控制器时,第三无线局域网控制器可以直接从第二无线局域网控制器上获取Session1的元组。
步骤803:AP3获取AP2和AP1的IP地址。
其中,步骤403与步骤402在执行时可以不分时间先后。
步骤804,AP3在流转发表中建立第一流转发表项以及第二流转发表项。其中第一流转发表项的键值为Session1的元组,所述第一流转发表项的内容包括AP1与AP3之间的隧道的隧道目的IP地址,所述隧道目的IP地址为AP1的IP地址。其中第二流转发表项的键值为Session2的元组,所述第二流转发表项的内容包括AP2与AP3之间的隧道的隧道目的IP地址,所述隧道目的IP地址为AP2的IP地址。
步骤805,AP3接收到STA发送的数据报文;
步骤806,AP3在流转发表中查找与所述数据报文匹配的流转发表项。
当在流转发表中查找到的与所述数据报文匹配的流转发表项时,执行步骤807;当流转发表中缺乏与所述数据报文匹配的流转发表项时,执行步骤808。
步骤807,AP3根据所述流转发表项中的内容将所述数据报文转发。
具体的,若数据报文匹配的流转发表项为第一流转发表项,获取所述第一流转发表项中的AP1的IP地址,并使用隧道目的IP地址为所述AP1的IP地址的隧道发送所述数据报文。其中,该隧道为AP1与AP3之间的隧道。若数据报文匹配的流转发表项为第二流转发表项,AP3获取所述第二流转发表项中的AP2的IP地址,并使用隧道目的IP地址为所述AP2的IP地址的隧道发送所述数据报文。其中,该隧道为AP2与AP3之间的隧道。
步骤808,AP3为所述数据报文所属的Session3分配端口号,并AP3将所述数据报文的所述源IP地址转换为指定IP地址,并且将所述数据报文的源端口号转换为分配的端口号。执行步骤809。这里的数据报文是Session3的第一个数据报文。
其中指定IP地址为AP3所在的子网中的地址。
步骤809,AP3在流转发表中建立第三流转发表项。所述第三流转发表项的键值为所述数据报文所属的Session3的元组,所述第三流转发表项的内容包括分配的端口号。
其中数据报文匹配的第三流转发表项,则说明数据报文是Session3的除第一个数据报文外的后续数据报文,AP3获取与所述第一数据报文匹配的所述第三流转发表项中的端口号,所述AP3将所述数据报文的所述源IP地址转换为所述指定IP地址,并且将所述数据报文的源端口号转换为所述数据报文匹配的所述第三流转发表项中的端口号。
本发明实施例提供了一种无线局域网漫游站点的流的转发装置,所述设置于第一AP中,所述第一AP为所述STA漫游后关联的AP,如图9所示,所述装置包括接收模块901、处理模块902以及发送模块903。
接收模块901,用于接收站点STA发送的第一数据报文,所述第一数据报文的源IP地址为第二AP所在的子网中的IP地址,所述第二AP为所述STA漫游前关联的AP;所述第一数据报文为所述STA关联第一AP后,所述STA新产生的流中的数据报文;
处理模块902,用于将所述接收模块901接收到的第一数据报文的所述源IP地址转换为指定IP地址,所述指定IP地址为所述第一AP所在的子网中的IP地址;
发送模块903,用于转发所述处理模块转换后的所述第一数据报文。
可选地,所述接收模块901,还用于接收所述STA发送的第二数据报文,所述第二数据报文为第二AP的旧流中的数据报文,所述第二AP的旧流为在所述STA关联所述第二AP的情况下,所述STA产生的流;
所述发送模块903,还用于将所述接收模块901接收到的所述第二数据报文通过所述第一AP与所述第二AP之间的隧道发送给所述第二AP。
进一步地,所述接收模块901,还用于接收STA发送的第二数据报文前,接收所述第二AP的旧流的元组和所述第二AP的IP地址;
所述处理模块902,还用于在流转发表中建立第一流转发表项,所述第一流转发表项的键值为所述第二AP的旧流的元组,所述第一流转发表项的内容包括第一AP与第二AP之间的隧道的隧道目的IP地址,所述隧道目的IP地址为所述第二AP的IP地址;在流转发表中查找与所述第二数据报文匹配的流转发表项,查找到与所述第二数据报文匹配的流转发表项为所述第一流转发表项,获取所述第一流转发表项中的所述第二AP的IP地址;
所述发送模块903将所述第二数据报文通过所述第一AP与所述第二AP之间的隧道发送给所述第二AP具体为:所述发送模块903使用隧道目的IP地址为所述第二AP的IP地址的隧道发送所述第二数据报文。
在其中一个实施例的一个场景中,所述处理模块902将所述第一数据报文的所述源IP地址转换为所述指定IP地址,具体为:
在流转发表中查找与所述第一数据报文匹配的流转发表项,当查找到与所述第一数据报文匹配的流转发表项时,获取所述流转发表项中的端口号,将所述第一数据报文的所述源IP地址转换为所述指定IP地址,并且将所述第一数据报文的源端口号转换为所述第一数据报文匹配的所述流转发表项中的端口号。
在其中一个实施例的另一个场景中,所述处理模块902将所述第一数据报文的所述源IP地址转换为所述指定IP地址,具体为:
在流转发表中查找与所述第一数据报文匹配的流转发表项,当所述流转发表中缺乏与所述第一数据报文匹配的流转发表项时,所述第一AP为所述第一数据报文所属的流分配端口号,所述第一AP将所述第一数据报文的所述源IP地址转换为所述指定IP地址,并且将所述第一数据报文的源端口号转换为分配的所述端口号;并在流转发表中建立第二流转发表项,所述第二流转发表项的键值为所述第一数据报文所属的流的元组,所述第二流转发表项的内容包括分配的所述端口号。
进一步地,所述处理模块902,还用于在流转发表中建立第三流转发表项,所述第三流转发表项的键值为转换后的所述第一数据报文所属的流的元组,所述第一流转发表项的内容包括转换前的所述第一数据报文的所述源IP地址和转换前的所述第一数据报文的源端口号;
所述接收模块901,还用于接收发送给所述STA的第三数据报文,所述第三数据报文属于转换后的所述第一数据报文所属的流,所述第三数据报文的目的IP地址为所述指定IP地址,所述第三数据报文的目的端口号为分配的所述端口号;
所述处理模块902,还用于将所述接收模块901接收到的所述第三数据报文的目的IP地址转换为述第一数据报文的所述源IP地址,将所述第三数据报文的目的端口号转换为所述转换前的第一数据报文的源端口号;
所述发送模块903,还用于转发所述处理模块902转换后的所述第三数据报文。
由于STA在最初接入WLAN时,STA的IP地址就已经确定为STA此时关联的AP所在的子网中的IP地址,漫游后新产生的流的数据报文的源IP地址是STA的IP地址,漫游后STA关联的AP将该数据报文的源IP地址NAT为STA漫游后关联的AP所在的子网中的IP地址,然后直接在第一AP所在的子网中转发,从而提高了转发效率,网络带宽的资源得到了合理利用。
基于上述实施例提供的无线局域网漫游站点的流的转发方法及装置,本发明实施例还提供了一种无线局域网漫游站点的流的转发设备,如图10所示,该设备包括无线收发器1001、处理器1002、存储器1003以及有线收发器1005。无线收发器1001、处理器1002、存储器1003以及有线收发器1005相互连接。本发明实施例中不限定上述部件之间的具体连接介质。本发明实施例在图10中以存储器1003、处理器1002以及收发器之间通过总线1004连接,总线在图10中以粗线表示,其它部件之间的连接方式,仅是进行示意性说明,并不引以为限。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图10中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
本发明实施例中存储器1003,用于存储处理器1002执行的程序代码,可以是易失性存储器(英文:volatile memory),例如随机存取存储器(英文:random-access memory,缩写:RAM);存储器1003也可以是非易失性存储器(英文:non-volatile memory),例如只读存储器(英文:read-only memory,缩写:ROM),快闪存储器(英文:flash memory),硬盘(英文:hard disk drive,缩写:HDD)或固态硬盘(英文:solid-state drive,缩写:SSD)、或者存储器1003是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器1003可以是上述存储器的组合。
本发明实施例中处理器1002,可以是一个中央处理单元(英文:centralprocessing unit,简称CPU)。
无线收发器1001可以包括但不仅限于天线,用于收发无线局域网报文。有线收发器1005可以包括但不仅限于以太网端口,用于收发有线报文。
本发明实施例中将无线局域网漫游站点的流的转发设备作为第一AP或者将无线局域网漫游站点的流的转发设备设置于第一AP中,针对其他AP当然也可以由无线局域网漫游站点的流的转发设备构成,本发明实施例仅以一个AP为例(第一AP)说明,第一AP为STA漫游后关联的AP。
无线收发器1001接收STA发送的第一数据报文,所述第一数据报文的源IP地址为第二AP所在的子网中的IP地址,所述第二AP为所述STA漫游前关联的AP;所述第一数据报文为所述STA关联第一AP后,所述STA新产生的流中的数据报文。
处理器1002将所述第一数据报文的所述源IP地址转换为指定IP地址;并转发处理器1002转换后的所述第一数据报文,所述指定IP地址为所述第一AP所在的子网中的IP地址。
无线收发器1001还接收所述STA发送的第二数据报文,所述第二数据报文为第二AP的旧流中的数据报文,所述第二AP的旧流为在所述STA关联所述第二AP的情况下,所述STA产生的流;
然后有线收发器1005将所述第二数据报文通过所述第一AP与所述第二AP之间的隧道发送给所述第二AP。
在无线收发器1001接收STA发送的第二数据报文前,有线收发器1005接收所述第二AP的旧流的元组和所述第二AP的IP地址;
处理器1002在存储器1003存储的流转发表中建立第一流转发表项,所述第一流转发表项的键值为所述第二AP的旧流的元组,所述第一流转发表项的内容包括第一AP与第二AP之间的隧道的隧道目的IP地址,所述隧道目的IP地址为所述第二AP的IP地址。
处理器1002在存储器1003存储的流转发表中查找与所述第二数据报文匹配的流转发表项,处理器1002查找到与所述第二数据报文匹配的流转发表项为所述第一流转发表项,获取所述第一流转发表项中的所述第二AP的IP地址;
处理器1002指示有线收发器1005使用隧道目的IP地址为所述第二AP的IP地址的隧道发送所述第二数据报文。
处理器1002在存储器1003存储的流转发表中查找与所述第一数据报文匹配的流转发表项,当查找到与所述第一数据报文匹配的流转发表项时,获取所述流转发表项中的端口号,所述第一AP将所述第一数据报文的所述源IP地址转换为所述指定IP地址,并且将所述第一数据报文的源端口号转换为所述第一数据报文匹配的所述流转发表项中的端口号。
处理器1002在存储器1003存储的流转发表中查找与所述第一数据报文匹配的流转发表项,当所述流转发表中缺乏与所述第一数据报文匹配的流转发表项时,处理器1002为所述第一数据报文所属的流分配端口号,将所述第一数据报文的所述源IP地址转换为所述指定IP地址,并且将所述第一数据报文的源端口号转换为分配的所述端口号;
处理器1002在流转发表中建立第二流转发表项,所述第二流转发表项的键值为所述第一数据报文所属的流的元组,所述第二流转发表项的内容包括分配的所述端口号。
处理器1002还在流转发表中建立第三流转发表项,所述第三流转发表项的键值为转换后的所述第一数据报文所属的流的元组,所述第一流转发表项的内容包括转换前的所述第一数据报文的所述源IP地址和转换前的所述第一数据报文的源端口号;
无线收发器1001接收发送给所述STA的第三数据报文,所述第三数据报文属于转换后的所述第一数据报文所属的流,所述第三数据报文的目的IP地址为所述指定IP地址,所述第三数据报文的目的端口号为分配的所述端口号;
处理器1002则将无线收发器1001接收到的所述第三数据报文的目的IP地址转换为述第一数据报文的所述源IP地址,将所述第三数据报文的目的端口号转换为所述转换前的第一数据报文的源端口号;并转发转换后的所述第三数据报文。
由于STA在最初接入WLAN时,STA的IP地址就已经确定为STA此时关联的AP所在的子网中的IP地址,漫游后新产生的流的数据报文的源IP地址是STA的IP地址,漫游后STA关联的AP将该数据报文的源IP地址NAT为STA漫游后关联的AP所在的子网中的IP地址,然后直接在第一AP所在的子网中转发,从而提高了转发效率,网络带宽的资源得到了合理利用。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令处理器完成,所述的程序可以存储于计算机可读存储介质中,所述存储介质是非短暂性(英文:non-transitory)介质,例如随机存取存储器,只读存储器,快闪存储器,硬盘,固态硬盘,磁带(英文:magnetic tape),软盘(英文:floppy disk),光盘(英文:optical disc)及其任意组合。
本发明是参照本发明实施例的方法和设备各自的流程图和方框图来描述的。应理解可由计算机程序指令实现流程图和方框图中的每一流程和方框、以及流程图和方框图中的流程和方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和方框图一个方框或多个方框中指定的功能的装置。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。

Claims (12)

1.一种无线局域网漫游站点的流的转发方法,其特征在于,包括:
第一接入点AP接收站点STA发送的第一数据报文,所述第一AP为所述STA漫游后关联的AP,所述第一数据报文的源互联网协议IP地址为第二AP所在的子网中的IP地址,所述第二AP为所述STA漫游前关联的AP;所述第一数据报文为所述STA关联第一AP后,所述STA新产生的流中的数据报文;
所述第一AP将所述第一数据报文的所述源IP地址转换为指定IP地址,并转发转换后的所述第一数据报文,所述指定IP地址为所述第一AP所在的子网中的IP地址。
2.如权利要求1所述的方法,其特征在于,还包括:
第一AP接收所述STA发送的第二数据报文,所述第二数据报文为第二AP的旧流中的数据报文,所述第二AP的旧流为在所述STA关联所述第二AP的情况下,所述STA产生的流;
所述第一AP将所述第二数据报文通过所述第一AP与所述第二AP之间的隧道发送给所述第二AP。
3.如权利要求2所述的方法,其特征在于,所述第一AP接收STA发送的第二数据报文前,所述的方法还包括:
所述第一AP接收所述第二AP的旧流的元组和所述第二AP的IP地址;
所述第一AP在流转发表中建立第一流转发表项,所述第一流转发表项的键值为所述第二AP的旧流的元组,所述第一流转发表项的内容包括第一AP与第二AP之间的隧道的隧道目的IP地址,所述隧道目的IP地址为所述第二AP的IP地址;
所述第一AP将所述第二数据报文通过所述第一AP与所述第二AP之间的隧道发送给第二AP,包括:
所述第一AP在流转发表中查找与所述第二数据报文匹配的流转发表项,所述第一AP查找到与所述第二数据报文匹配的流转发表项为所述第一流转发表项,获取所述第一流转发表项中的所述第二AP的IP地址;
所述第一AP使用隧道目的IP地址为所述第二AP的IP地址的隧道发送所述第二数据报文。
4.如权利要求1至3任一所述的方法,其特征在于,所述第一AP将所述第一数据报文的所述源IP地址转换为所述指定IP地址,包括:
所述第一AP在流转发表中查找与所述第一数据报文匹配的流转发表项,当所述第一AP查找到与所述第一数据报文匹配的流转发表项时,获取所述流转发表项中的端口号,所述第一AP将所述第一数据报文的所述源IP地址转换为所述指定IP地址,并且将所述第一数据报文的源端口号转换为所述第一数据报文匹配的所述流转发表项中的端口号。
5.如权利要求1至3任一所述的方法,其特征在于,所述第一AP将所述第一数据报文的所述源IP地址转换为所述指定IP地址,包括:
所述第一AP在流转发表中查找与所述第一数据报文匹配的流转发表项,当所述流转发表中缺乏与所述第一数据报文匹配的流转发表项时,所述第一AP为所述第一数据报文所属的流分配端口号,所述第一AP将所述第一数据报文的所述源IP地址转换为所述指定IP地址,并且将所述第一数据报文的源端口号转换为分配的所述端口号;
所述第一AP在流转发表中建立第二流转发表项,所述第二流转发表项的键值为所述第一数据报文所属的流的元组,所述第二流转发表项的内容包括分配的所述端口号。
6.如权利要求5所述的方法,其特征在于,还包括:
所述第一AP在流转发表中建立第三流转发表项,所述第三流转发表项的键值为转换后的所述第一数据报文所属的流的元组,所述第一流转发表项的内容包括转换前的所述第一数据报文的所述源IP地址和转换前的所述第一数据报文的源端口号;
所述第一AP接收发送给所述STA的第三数据报文,所述第三数据报文属于转换后的所述第一数据报文所属的流,所述第三数据报文的目的IP地址为所述指定IP地址,所述第三数据报文的目的端口号为分配的所述端口号;
所述第一AP将所述第三数据报文的目的IP地址转换为述第一数据报文的所述源IP地址,将所述第三数据报文的目的端口号转换为所述转换前的第一数据报文的源端口号;
所述第一AP转发转换后的所述第三数据报文。
7.一种无线局域网漫游站点的流的转发装置,其特征在于,所述装置设置于第一接入点AP中,所述第一AP为所述STA漫游后关联的AP,所述装置包括:
接收模块,用于接收所述STA发送的第一数据报文,所述第一数据报文的源互联网协议IP地址为第二AP所在的子网中的IP地址,所述第二AP为所述STA漫游前关联的AP;所述第一数据报文为所述STA关联所述第一AP后,所述STA新产生的流中的数据报文;
处理模块,用于将所述接收模块接收到的第一数据报文的所述源IP地址转换为指定IP地址,所述指定IP地址为所述第一AP所在的子网中的IP地址;
发送模块,用于转发所述处理模块转换后的所述第一数据报文。
8.如权利要求7所述的装置,其特征在于,所述接收模块,还用于接收所述STA发送的第二数据报文,所述第二数据报文为第二AP的旧流中的数据报文,所述第二AP的旧流为在所述STA关联所述第二AP的情况下,所述STA产生的流;
所述发送模块,还用于将所述接收模块接收到的所述第二数据报文通过所述第一AP与所述第二AP之间的隧道发送给所述第二AP。
9.如权利要求8所述的装置,其特征在于,所述接收模块,还用于接收STA发送的第二数据报文前,接收所述第二AP的旧流的元组和所述第二AP的IP地址;
所述处理模块,还用于在流转发表中建立第一流转发表项,所述第一流转发表项的键值为所述第二AP的旧流的元组,所述第一流转发表项的内容包括第一AP与第二AP之间的隧道的隧道目的IP地址,所述隧道目的IP地址为所述第二AP的IP地址;在流转发表中查找与所述第二数据报文匹配的流转发表项,查找到与所述第二数据报文匹配的流转发表项为所述第一流转发表项,获取所述第一流转发表项中的所述第二AP的IP地址;
所述发送模块将所述第二数据报文通过所述第一AP与所述第二AP之间的隧道发送给所述第二AP具体为所述发送模块使用隧道目的IP地址为所述第二AP的IP地址的隧道发送所述第二数据报文。
10.如权利要求7至9任一所述的装置,其特征在于,所述处理模块将所述第一数据报文的所述源IP地址转换为所述指定IP地址,具体为:
在流转发表中查找与所述第一数据报文匹配的流转发表项,当查找到与所述第一数据报文匹配的流转发表项时,获取所述流转发表项中的端口号,将所述第一数据报文的所述源IP地址转换为所述指定IP地址,并且将所述第一数据报文的源端口号转换为所述第一数据报文匹配的所述流转发表项中的端口号。
11.如权利要求7至9任一所述的装置,其特征在于,所述处理模块将所述第一数据报文的所述源IP地址转换为所述指定IP地址,具体为:
在流转发表中查找与所述第一数据报文匹配的流转发表项,当所述流转发表中缺乏与所述第一数据报文匹配的流转发表项时,所述第一AP为所述第一数据报文所属的流分配端口号,所述第一AP将所述第一数据报文的所述源IP地址转换为所述指定IP地址,并且将所述第一数据报文的源端口号转换为分配的所述端口号;并在流转发表中建立第二流转发表项,所述第二流转发表项的键值为所述第一数据报文所属的流的元组,所述第二流转发表项的内容包括分配的所述端口号。
12.如权利要求11所述的装置,其特征在于,所述处理模块,还用于在流转发表中建立第三流转发表项,所述第三流转发表项的键值为转换后的所述第一数据报文所属的流的元组,所述第一流转发表项的内容包括转换前的所述第一数据报文的所述源IP地址和转换前的所述第一数据报文的源端口号;
所述接收模块,还用于接收发送给所述STA的第三数据报文,所述第三数据报文属于转换后的所述第一数据报文所属的流,所述第三数据报文的目的IP地址为所述指定IP地址,所述第三数据报文的目的端口号为分配的所述端口号;
所述处理模块,还用于将所述接收模块接收到的所述第三数据报文的目的IP地址转换为述第一数据报文的所述源IP地址,将所述第三数据报文的目的端口号转换为所述转换前的第一数据报文的源端口号;
所述发送模块,还用于转发所述处理模块转换后的所述第三数据报文。
CN201510218813.2A 2015-04-30 2015-04-30 一种无线局域网漫游站点的流的转发方法及装置 Active CN106211141B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510218813.2A CN106211141B (zh) 2015-04-30 2015-04-30 一种无线局域网漫游站点的流的转发方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510218813.2A CN106211141B (zh) 2015-04-30 2015-04-30 一种无线局域网漫游站点的流的转发方法及装置

Publications (2)

Publication Number Publication Date
CN106211141A true CN106211141A (zh) 2016-12-07
CN106211141B CN106211141B (zh) 2019-08-20

Family

ID=57458783

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510218813.2A Active CN106211141B (zh) 2015-04-30 2015-04-30 一种无线局域网漫游站点的流的转发方法及装置

Country Status (1)

Country Link
CN (1) CN106211141B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113473441A (zh) * 2021-06-08 2021-10-01 北京小米移动软件有限公司 数据转发方法及装置、节点设备以及存储介质
CN115086946A (zh) * 2022-05-23 2022-09-20 阿里巴巴(中国)有限公司 通信方法、***、无线接入设备及接入控制器

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101141493A (zh) * 2007-10-11 2008-03-12 杭州华三通信技术有限公司 无线局域网的地址解析方法及接入点
CN101511117A (zh) * 2009-04-08 2009-08-19 杭州华三通信技术有限公司 一种二层跨网段通信的方法、***和设备
CN101640882A (zh) * 2009-09-07 2010-02-03 杭州华三通信技术有限公司 一种防止流量中断方法及装置
CN102833721A (zh) * 2012-08-06 2012-12-19 福建星网锐捷网络有限公司 无线漫游数据转发方法及无线访问接入点
CN104158749A (zh) * 2013-05-14 2014-11-19 华为技术有限公司 软件定义网络中报文转发方法、网络设备及软件定义网络

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101141493A (zh) * 2007-10-11 2008-03-12 杭州华三通信技术有限公司 无线局域网的地址解析方法及接入点
CN101511117A (zh) * 2009-04-08 2009-08-19 杭州华三通信技术有限公司 一种二层跨网段通信的方法、***和设备
CN101640882A (zh) * 2009-09-07 2010-02-03 杭州华三通信技术有限公司 一种防止流量中断方法及装置
CN102833721A (zh) * 2012-08-06 2012-12-19 福建星网锐捷网络有限公司 无线漫游数据转发方法及无线访问接入点
CN104158749A (zh) * 2013-05-14 2014-11-19 华为技术有限公司 软件定义网络中报文转发方法、网络设备及软件定义网络

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113473441A (zh) * 2021-06-08 2021-10-01 北京小米移动软件有限公司 数据转发方法及装置、节点设备以及存储介质
CN113473441B (zh) * 2021-06-08 2024-02-06 北京小米移动软件有限公司 数据转发方法及装置、节点设备以及存储介质
CN115086946A (zh) * 2022-05-23 2022-09-20 阿里巴巴(中国)有限公司 通信方法、***、无线接入设备及接入控制器
CN115086946B (zh) * 2022-05-23 2024-04-16 阿里巴巴(中国)有限公司 通信方法、***、无线接入设备及接入控制器

Also Published As

Publication number Publication date
CN106211141B (zh) 2019-08-20

Similar Documents

Publication Publication Date Title
US11743075B2 (en) Communication method and apparatus
CN101577722B (zh) 实现强制mac转发功能的方法和装置
CN102316028B (zh) 发送因特网协议分组的方法及装置
EP2846600A2 (en) M2M communication method and system thereof
CN107852773B (zh) 一种数据传输的方法、相关设备及***
KR101191721B1 (ko) IPv6 기반의 와이어리스 네트워크에서 그룹 별멀티캐스트 지원을 위한 연결 식별자 생성 및 관리 방법과이를 채용한 네트워크 인터페이스
CN114124618B (zh) 一种报文传输方法及电子设备
CN104854576A (zh) 接入网络的***和方法
CN109309904B (zh) 组播数据传输方法、相关设备及通信***
CN104468866A (zh) 一种无线局域网中多网关终端快速漫游方法
US9438557B2 (en) Adaptive dynamic host configuration protocol assignment with virtual local area network pool
CN110831249B (zh) 通信方法和装置
CN110062060B (zh) 一种ip地址分配的***和方法
CN103813288A (zh) 基于移动网络的租户网络业务实现方法、***及网元
CN102014039A (zh) 数据传输方法和接入点
CN104717640B (zh) 一种基于定位的无线网络通信的实现方法
CN106211141A (zh) 一种无线局域网漫游站点的流的转发方法及装置
CN105830511A (zh) 一种sgw、mme、寻呼方法及***
CN101494849B (zh) 一种通信方法、***及设备
CA3178578A1 (en) Message sending and receiving methods and apparatuses, and communication system
Lee et al. Considerations of neighbor discovery protocol over IEEE 802.16 networks
CN102573014B (zh) 向采用多种接入方式的用户传输数据报文的方法和设备
CN107317740A (zh) 一种数据报文的处理方法及装置
US20230055358A1 (en) Method and apparatus for route aggregation handling for control and user plane separation
JP5703111B2 (ja) 通信システムおよび装置

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