CN104469843B - 一种capwap数据的处理方法和装置 - Google Patents
一种capwap数据的处理方法和装置 Download PDFInfo
- Publication number
- CN104469843B CN104469843B CN201410653225.7A CN201410653225A CN104469843B CN 104469843 B CN104469843 B CN 104469843B CN 201410653225 A CN201410653225 A CN 201410653225A CN 104469843 B CN104469843 B CN 104469843B
- Authority
- CN
- China
- Prior art keywords
- capwap
- data
- packets
- sent
- virtual drive
- 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.)
- Expired - Fee Related
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W28/00—Network traffic management; Network resource management
- H04W28/02—Traffic management, e.g. flow control or congestion control
- H04W28/06—Optimizing the usage of the radio link, e.g. header compression, information sizing, discarding information
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4633—Interconnection of networks using encapsulation techniques, e.g. tunneling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W28/00—Network traffic management; Network resource management
- H04W28/02—Traffic management, e.g. flow control or congestion control
- H04W28/06—Optimizing the usage of the radio link, e.g. header compression, information sizing, discarding information
- H04W28/065—Optimizing the usage of the radio link, e.g. header compression, information sizing, discarding information using assembly or disassembly of packets
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W80/00—Wireless network protocols or protocol adaptations to wireless operation
- H04W80/08—Upper layer protocols
- H04W80/12—Application layer protocols, e.g. WAP [Wireless Application Protocol]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明提供一种CAPWAP数据的处理方法和装置,用以解决现有技术存在的在应用层实现CAPWAP协议的方式,使得吞吐量降低,CPU占用率提高的问题。本发明实施例的方法包括:当上行数据进入虚拟驱动时,将其进行CAPWAP封装,形成CAPWAP包;根据IP地址,将包通过路由发送给对应的AC;下行数据进入内核协议栈后,IP头中的UDP协议被修改为CAPWAP协议,进入TCP层进行解包得到下行数据,通过虚拟驱动发送。由于本发明实施例在虚拟驱动中实现CAPWAP封装,在内核协议栈的TCP层实现CAPWAP解包,并且虚拟驱动能够复用内核协议栈的IP层的分包和组包功能,从而降低了CPU的占用率,提高了吞吐量。
Description
技术领域
本发明涉及无线通信技术领域,特别涉及一种CAPWAP数据的处理方法和装置。
背景技术
CAPWAP(Control And Provisioning of Wireless Access Points ProtocolSpecification,无线接入点的控制和规范)协议是一个通用的隧道协议,该协议实现AC(Access Controller,接入控制器)对AP(Access Point,接入点)进行管理、配置以及业务数据管理等基本协议功能。在WLAN(Wireless Local Area Networks,无线局域网)的网络内,AP的数据非常庞大,AC对AP的集中管理显得尤为重要,各大厂家都生产了能进行集中管理的AC和AP(瘦AP),实现了各自的CAPWAP协议封装功能,以及在该协议封装上的附加功能。因而,CAPWAP协议实现的解耦、可重用性及其效率极其重要。
现有技术中常用的CAPWAP实现方式通常都是在应用层实现的,在具体的实现过程中需要进行数据在内核和应用层之间的拷贝。从效率上看,目前的这种CAPWAP实现方式,使得吞吐量比原吞吐量大大的降低了,同时CPU(Central Processing Unit,中央处理器)的占用率大大的提高了。
发明内容
本发明提供一种CAPWAP数据的处理方法和装置,用以解决现有技术中存在的在应用层实现CAPWAP协议的方式,使得吞吐量降低,CPU占用率提高的问题。
本发明实施例提供一种CAPWAP上行数据的处理方法,包括:
当上行数据进入虚拟驱动时,将所述上行数据进行CAPWAP封装,形成CAPWAP包;
根据IP(Internet Protocol,网络之间互联的协议)地址,通过路由向接入控制器AC发送所述CAPWAP包。
由于本发明实施例的CAPWAP封装是在虚拟驱动实现的,避免了在封装过程中,数据在内核和应用层中的拷贝,增进了CAPWAP隧道封装的效率,进而降低了CPU的占用率;虚拟驱动能够复用内核协议栈的IP层的分包功能,对CAPWAP包进行分包处理,从而增加了分包的灵活性,避免了在驱动再进行低效和重复的分包,增大了吞吐量。
较佳地,在上行数据进入虚拟驱动之前,还包括:
若所述上行数据为业务数据,在通过数据驱动接收到所述业务数据后,若所述业务数据的MAC(Media Access Control,介质访问控制)地址不是本地MAC地址,则通过网桥转发给虚拟驱动。
较佳地,在上行数据进入虚拟驱动之前,还包括:
若所述上行数据为管理数据,则将所述管理数据通过应用层发送给虚拟驱动。
由于本发明实施例在功能上实现了解耦合,因而能同时实现对业务数据和管理数据进行CAPWAP封装。
较佳地,根据IP地址,通过路由向AC发送所述CAPWAP包,具体包括:
根据IP地址,通过所述AP的上联口将所述CAPWAP包通过路由发送给对应的AC。
较佳地,所述上联口是有线口或无线口。
由于本发明实施例运用了复用技术,实现了AP的上联口可以是有线口,也可以是无线口。
本发明实施例提供一种CAPWAP下行数据的处理方法,包括:
通过数据驱动接收CAPWAP包,其中所述CAPWAP包是由AC将接收到的下行数据进行CAPWAP封装形成的;
若所述CAPWAP包是需要处理的CAPWAP包,将所述CAPWAP包的IP头中的UDP(UserDatagram Protocol,用户数据报协议)协议修改为CAPWAP协议;
对修改协议后的所述CAPWAP包进行解包操作得到下行数据;
通过虚拟驱动发送所述下行数据。
本发明实施例的CAPWAP解包是在TCP层实现的,避免了在封装过程中,数据在内核和应用层中的拷贝,增进了CAPWAP隧道解包的效率,进而降低了CPU的占用率;虚拟驱动能够复用内核协议栈的IP层的组包功能,对CAPWAP包进行高效的组包处理,进而增大了吞吐量。
较佳地,对修改协议后的所述CAPWAP包进行解包操作得到下行数据,包括:
通过内核协议栈的传输控制协议TCP层对所述修改后的CAPWAP包进行解包操作得到下行数据;
对修改协议后的所述CAPWAP包进行解包操作得到下行数据之后,包括:
将所述下行数据发送给虚拟驱动。
较佳地,通过虚拟驱动发送所述下行数据,包括:
若所述下行数据为业务数据,将所述下行数据通过虚拟驱动发送给网桥,并通过网桥发送给数据驱动;或
若所述下行数据为管理数据,且所述管理数据的IP地址是本地IP地址,将所述管理数据通过虚拟驱动发送给应用层,并通过所述应用层对管理数据进行处理。
由于本发明实施例在功能上实现了解耦合,因而能同时实现对业务数据和管理数据进行CAPWAP解包。
较佳地,通过数据驱动接收CAPWAP包,具体包括:
通过所述AP的上联口接收所述下行数据。
较佳地,所述上联口是有线口或无线口。
由于本发明实施例运用了复用技术,实现了AP的上联口可以是有线口,也可以是无线口。
本发明实施例提供一种CAPWAP上行数据的处理装置,包括:
封装单元,用于当上行数据进入虚拟驱动时,将所述上行数据进行CAPWAP封装,形成CAPWAP包;
发送单元,用于根据IP地址,通过路由向AC发送所述CAPWAP包。
较佳地,所述封装单元还用于:
若所述上行数据为业务数据,在通过数据驱动接收到所述业务数据后,若所述业务数据的目的MAC地址不是本地MAC地址,则通过网桥转发给虚拟驱动。
较佳地,所述封装单元还用于:
若所述上行数据为管理数据,则将所述管理数据通过应用层发送给虚拟驱动。
较佳地,所述发送单元具体用于:
根据IP地址,通过所述AP的上联口将所述CAPWAP包通过路由发送给对应的AC。
较佳地,所述上联口是有线口或无线口。
本发明实施例提供一种CAPWAP下行数据的处理装置,包括
接收单元,用于通过数据驱动接收CAPWAP包,其中所述CAPWAP包是由AC将接收到的下行数据进行CAPWAP封装形成的;
协议修改单元,用于若所述CAPWAP包是需要处理的CAPWAP包,将所述CAPWAP包的IP头中的UDP协议修改为CAPWAP协议;
解包单元,用于对修改协议后的所述CAPWAP包进行解包操作得到下行数据;
发送单元,用于通过虚拟驱动发送所述下行数据。
较佳地,所述解包单元具体用于:
通过内核协议栈的传输控制协议TCP层对所述修改后的CAPWAP包进行解包操作得到下行数据;
对修改协议后的所述CAPWAP包进行解包操作得到下行数据之后,包括:
将所述下行数据发送给虚拟驱动。
较佳地,所述发送单元具体用于:
若所述下行数据为业务数据,将所述下行数据通过虚拟驱动发送给网桥,并通过网桥发送给数据驱动;或
若所述下行数据为管理数据,且所述管理数据的IP地址是本地IP地址,将所述管理数据通过虚拟驱动发送给应用层,并通过所述应用层对管理数据进行处理。
较佳地,所述接收单元具体用于:
通过所述AP的上联口接收所述下行数据。
较佳地,所述上联口是有线口或无线口。
本发明实施例在虚拟驱动中实现CAPWAP封装,在内核协议栈的TCP层实现了CAPWAP解包,并且虚拟驱动能够复用内核协议栈的IP层的分包和组包功能,从而降低了CPU的占用率,提高了吞吐量;在功能上实现了解耦合,因而能同时实现对业务数据和管理数据进行CAPWAP封装、CAPWAP解包;通过复用技术,使得AP的上联口可以是有线口也可以是无线口。
附图说明
图1a为本发明实施例一CAPWAP上行数据的处理方法流程示意图;
图1b为本发明实施例二上行业务数据的处理方法流程示意图;
图1c为本发明实施例三上行管理数据的处理方法流程示意图;
图1d为本发明实施例四一般瘦接入点框架组网示意图;
图1e为本发明实施例五fit-repeater(瘦中继)模式形成的瘦接入点框架组网示意图;
图2a为本发明实施例六CAPWAP下行数据的处理方法流程示意图;
图2b为本发明实施例七下行业务数据的处理方法流程示意图;
图2c为本发明实施例八下行管理数据的处理方法流程示意图;
图3为本发明实施例九CAPWAP上行数据的处理装置流程示意图;
图4为本发明实施例十CAPWAP下行数据的处理装置流程示意图。
具体实施方式
本发明实施例在对上行数据进行CAPWAP处理时,当上行数据进入虚拟驱动时,将所述上行数据进行CAPWAP封装,形成CAPWAP包;根据IP地址,通过路由向AC发送所述CAPWAP包;在对下行数据进行CAPWAP处理时,通过数据驱动接收CAPWAP包,其中所述CAPWAP包是由AC将接收到的下行数据进行CAPWAP封装形成的;若所述CAPWAP包是需要处理的CAPWAP包,将所述CAPWAP包的IP头中的UDP协议修改为CAPWAP协议;对修改协议后的所述CAPWAP包进行解包操作得到下行数据;通过虚拟驱动发送所述下行数据。由于本发明实施例在虚拟驱动中实现CAPWAP封装,在内核协议栈的TCP层实现了CAPWAP解包,并且虚拟驱动能够复用内核协议栈的IP层的分包和组包功能,从而降低了CPU的占用率,提高了吞吐量。
下面结合说明书附图对本发明实施例作进一步详细描述。
如图1a所示,本发明实施例一CAPWAP上行数据的处理方法包括:
步骤100,当上行数据进入虚拟驱动时,将所述上行数据进行CAPWAP封装,形成CAPWAP包;
步骤101,根据IP地址,通过路由向AC发送所述CAPWAP包。
本发明实施例中CAPWAP包根据IP地址进行路由选择,该IP地址存放在进行CAPWAP封装前的上行数据中。
其中,本发明实施例实现了对上行业务数据和上行管理数据的CAPWAP处理方式。下面对上行业务数据和上行管理数据分别进行说明。
上行业务数据处理方式:
较佳地,在上行数据进入虚拟驱动之前,还包括:
若所述上行数据为业务数据,在通过数据驱动接收到所述业务数据后,若所述业务数据的MAC地址不是本地MAC地址,则通过网桥转发给虚拟驱动。
例如:在一般瘦接入点框架组网方式下,用户产生一个业务数据,该业务数据通过数据驱动1的ath0驱动口进入AP,由于业务数据中MAC地址不是本机MAC,因此将此业务数据通过网桥转发给虚拟驱动,虚拟驱动通过cap0虚拟网口接收上述业务数据,并对其进行CAPWAP封装,封装后形成的CAPWAP包根据IP地址进行路由选择,由于隧道外的IP为AC的IP,所以CAPWAP包顺利的通过数据驱动2的eth0驱动口进入AC。具体的上行业务数据的处理方法的步骤可以参见图1b。
如图1b所示,本发明实施例二上行业务数据的处理方法包括:
步骤200,用户产生业务数据。
步骤201,业务数据从数据驱动1进入AP。
步骤202,判断业务数据的MAC地址是否为本机MAC,若否,则执行步骤203;否则,执行步骤206。
步骤203,将业务数据通过网桥转发给虚拟驱动。
步骤204,虚拟驱动对业务数据进行CAPWAP封装。
步骤205,CAPWAP包根据IP地址进行路由选择,通过数据驱动1发送给AC。
步骤206,将业务数据转交给内核协议栈。
本发明实施例中数据驱动1的驱动口可以是无线口,也可以是有线口。
上行管理数据处理方式:
较佳地,在上行数据进入虚拟驱动之前,还包括:
若所述上行数据为管理数据,则将所述管理数据通过应用层发送给虚拟驱动。
由于本发明实施例在功能上实现了解耦合,因而虚拟驱动能够对AP应用层下发的管理数据进行封装。具体的:数据驱动实现数据的传输功能,虚拟驱动实现对CAPWAP数据的封装和中转的功能,在内核协议栈的IP层实现对不同的分组包的进行处理的功能,在TCP层实现对CAPWAP包的解包并转发给虚拟驱动的功能,上述每个模块的功能较为单一,此为在功能上实现了解耦合。
例如:在一般瘦接入点框架组网方式下,AP产生一个管理数据,该管理数据从应用层向下发送,虚拟驱动通过cap0虚拟网口接收上述管理数据,并对其进行CAPWAP封装,封装后形成的CAPWAP包根据IP地址进行路由选择,由于隧道外的IP为AC的IP,所以CAPWAP包顺利的通过数据驱动2的eth0驱动口进入AC。具体的上行管理数据的处理方法的步骤可以参见图1c。
如图1c所示,本发明实施例三上行管理数据的处理方法包括:
步骤300,管理数据从AP的应用层向下发送给虚拟驱动。
步骤301,虚拟驱动对管理数据进行CAPWAP封装。
步骤302,CAPWAP包根据IP地址进行路由选择,通过数据驱动1发送给AC。
本发明实施例中数据驱动1的驱动口可以是无线口,也可以是有线口。
需要说明的是,上述两种上行数据在进行处理的过程中,虽然以ath0、eth0为例,但是本发明实施例并未规定上行数据必须从哪个驱动口进入和进出,数据驱动的其它驱动口也同样适用于本发明实施例。
较佳地,在步骤101中,根据IP地址,通过所述AP的上联口将所述CAPWAP包通过路由发送给对应的AC。
较佳地,所述上联口是有线口或无线口。
本发明实施例AP的上联口为有线口具体可以参见图1d,其中图1d为本发明实施例二一般瘦接入点框架组网示意图,从图1d中可知,接入控制器与多个无线接入点设备相连,包括无线接入点设备1、无线接入点设备2……无线接入点设备n(n为大于2的正整数),无线接入点设备1至无线接入点设备n通过无线的方式与站点11、站点12、站点21……站点n1(n为大于2的正整数)。由图1d可知上行数据在无线接入点设备1中进行CAPWAP封装后,通过隧道发送给AC,AC通过与之相连的有线口接收封装后的上行数据;AP的上联口为无线口具体可以参见图1e,其中图1e为本发明实施例三fit-repeater模式形成的瘦接入点框架组网示意图,从图1e中可知,接入控制器与多个无线接入点设备相连,包括无线接入点设备1、无线接入点设备2、无线接入点设备3和无线接入点设备4,无线接入点设备1通过无线的方式与无线接入点设备11、无线接入点设备12、站点11相连,无线接入点设备11通过无线的方式与站点111,无线接入点设备11通过有线的方式与站点112,无线接入点设备2通过无线的方式与站点21,无线接入点设备3通过无线的方式与站点31,无线接入点设备4通过无线的方式与站点41。由图1e可知上行数据在无线接入点设备11中进行CAPWAP封装后,通过隧道发送给AC,AC通过与之相连的无线口接收封装后的上行数据。
如图2a所示,本发明实施例六CAPWAP下行数据的处理方法包括:
步骤400,通过数据驱动接收CAPWAP包,其中所述CAPWAP包是由AC将接收到的下行数据进行CAPWAP封装形成的;
步骤401,若所述CAPWAP包是需要处理的CAPWAP包,将所述CAPWAP包的IP头中的UDP协议修改为CAPWAP协议;
步骤402,对修改协议后的所述CAPWAP包进行解包操作得到下行数据;
步骤403,通过虚拟驱动发送所述下行数据。
本发明实施例判断CAPWAP包是否为需要处理的CAPWAP包的实现方法是:CAPWAP包通过数据驱动进入内核协议栈后被钩子截获,截获后进行判断操作。钩子是消息处理机制的一个平台,实现对某一特定消息的监视与截获操作。
较佳地,步骤402中,对修改协议后的所述CAPWAP包进行解包操作得到下行数据,包括:
通过内核协议栈的传输控制协议TCP层对所述修改后的CAPWAP包进行解包操作得到下行数据;
对修改协议后的所述CAPWAP包进行解包操作得到下行数据之后,包括:
将所述下行数据发送给虚拟驱动。
本发明实施例CAPWAP包解包过程:TCP层对CAPWAP包进行解包操作得到下行数据后,将下行数据发送给虚拟驱动,具体可以参见图2b和图2c。
其中,本发明实施例实现了对下行业务数据和下行管理数据的CAPWAP处理方式。下面对下行业务数据和下行管理数据分别进行说明。
下行业务数据处理方式:
较佳地,步骤403中,通过虚拟驱动发送所述下行数据,包括:
若所述下行数据为业务数据,将所述下行数据通过虚拟驱动发送给网桥,并通过网桥发送给数据驱动。
例如:在一般瘦接入点框架组网方式下,AC对业务数据进行CAPWAP封装形成CAPWAP包后,将其通过隧道发送给AP,该CAPWAP包从数据驱动2的eth0驱动口进入AP,被钩子截获,将IP头里的UDP协议修改为CAPWAP协议后,进行CAPWAP解包得到原始的业务数据,该业务数据通过cap0虚拟网口进入虚拟驱动,然后经过桥发送给数据驱动2,数据驱动2通过ath0驱动口接收业务数据再发送给用户。具体的下行业务数据的处理方法的步骤可以参见图2b。
如图2b所示,本发明实施例七下行业务数据的处理方法包括:
步骤500,数据驱动2接收AC通过隧道发送的经过CAPWAP封装的CAPWAP包后,CAPWAP包被钩子截获。
步骤501,钩子判断是否为本机需要处理的CAPWAP包,若是,则执行步骤502;否则,执行步骤506。
步骤502,内核协议栈将CAPWAP包IP头里的UDP协议修改为CAPWAP协议。
步骤503,TCP层将修改协议后的CAPWAP包进行解包操作获得原始业务数据后,将原始业务数据发送给虚拟驱动。
步骤504,虚拟驱动通过虚拟网口接收原始业务数据后,将原始业务数据经过网桥发送给数据驱动2。
步骤505,数据驱动2发送原始业务数据。
步骤506,钩子不对数据作任何处理,直接交给内核协议栈,内核协议栈对数据按照常规包发送处理方式进行处理。
本发明实施例七的所有步骤都是在AP端实现的。
下行管理数据处理方式:
较佳地,步骤403中,通过虚拟驱动发送所述下行数据,包括:
若所述下行数据为管理数据,且所述管理数据的IP地址是本地IP地址,将所述管理数据通过虚拟驱动发送给应用层,并通过所述应用层对管理数据进行处理。
例如:一般瘦接入点框架组网方式下,AC对管理数据进行CAPWAP封装形成CAPWAP包后,将其通过隧道发送给AP,该CAPWAP包从数据驱动2的eth0驱动口进入AP,被钩子截获,将IP头里的UDP协议修改为CAPWAP协议后,进行CAPWAP解包得到原始的管理数据,该管理数据通过cap0虚拟网口进入虚拟驱动,然后判断是否为本地IP地址,若是,则将管理数据发送给AP的应用层。具体的下行管理数据的处理方法的步骤可以参见图2c。
如图2c所示,本发明实施例八下行管理数据的处理方法包括:
步骤600,数据驱动2接收AC通过隧道发送的经过CAPWAP封装的CAPWAP包后,CAPWAP包被钩子截获。
步骤601,钩子判断是否为本机需要处理的CAPWAP包,若是,则执行步骤602;否则,执行步骤606。
步骤602,钩子将CAPWAP包IP头里的UDP协议修改为CAPWAP协议。
步骤603,TCP层将修改协议后的CAPWAP包进行解包操作获得原始管理数据后,将原始管理数据发送给虚拟驱动。
步骤604,虚拟驱动通过虚拟网口接收原始管理数据后,判断是否为本机IP,若是,则执行步骤605;否则,执行步骤607。
步骤605,虚拟驱动将原始管理数据发送给应用层。
步骤606,钩子不对数据作任何处理,直接交给内核协议栈,内核协议栈对数据按照常规包发送处理方式进行处理。
步骤607,虚拟驱动将原始业务数据发送给网桥,网桥将原始业务数据转发给相应的数据驱动。
本发明实施例八的所有步骤都是在AP端实现的。
本发明实施例中数据驱动2的驱动口可以是无线口,也可以是有线口。
需要说明的是,上述两种下行数据在进行处理的过程中,虽然以ath0、eth0为例,但是本发明实施例并未规定下行数据必须从哪个驱动口进入和进出,数据驱动的其它驱动口也同样适用于本发明实施例。
较佳地,步骤200中,通过所述AP的上联口接收所述下行数据。
较佳地,所述上联口是有线口或无线口。
本发明实施例AP的上联口为有线口具体可以参见图1d,其中图1d为本发明实施例二一般瘦接入点框架组网示意图,从图1d中可知,接入控制器与多个无线接入点设备相连,包括无线接入点设备1、无线接入点设备2……无线接入点设备n(n为大于2的正整数),无线接入点设备1至无线接入点设备n通过无线的方式与站点11、站点12、站点21……站点n1(n为大于2的正整数)相连。由图1d可知下行数据在AC中进行CAPWAP封装后,通过隧道发送给无线接入点设备2,其中,AC是通过与之相连的有线口发送封装后的下行数据;AP的上联口为无线口具体可以参见图1e,其中图1e为本发明实施例三fit-repeater模式形成的瘦接入点框架组网示意图,从图1d中可知,接入控制器与多个无线接入点设备相连,包括无线接入点设备1、无线接入点设备2、无线接入点设备3和无线接入点设备4,无线接入点设备1通过无线的方式与无线接入点设备11、无线接入点设备12、站点11相连,无线接入点设备11通过无线的方式与站点111,无线接入点设备11通过有线的方式与站点112,无线接入点设备2通过无线的方式与站点21,无线接入点设备3通过无线的方式与站点31,无线接入点设备4通过无线的方式与站点41。由图1e可知下行数据在AC中进行CAPWAP封装后,通过隧道发送给无线接入点设备12,其中,AC是通过与之相连的有线口发送封装后的下行数据。
本发明实施例数据驱动负责数据的传输;虚拟驱动负责数据的CAPWAP封装,虚拟驱动能够复用内核协议栈的IP层的分包和组包功能;TCP层实现CAPWAP解包。每个模块实现的功能单一,即在功能上实现了解耦合。
本发明实施例在虚拟驱动中实现CAPWAP封装,在内核协议栈的TCP层实现了CAPWAP解包,从而提高了吞吐量,降低了CPU的占用率。表1中显示了在应用层实现的CAPWAP协议的吞吐量和CPU占用率与本发明在内核协议栈的TCP层实现的CAPWAP协议的吞吐量和CPU占用率的对比表格。从表1中可以看出在原CAPWAP实现方式下的上行吞吐量为86.7、下行吞吐量为86.5,新改进的CAPWAP实现方式下的上行吞吐量为89、下行吞吐量为89,可知新改进的CAPWAP实现方式的上下行吞吐量比原来的吞吐量提高了;原CAPWAP实现方式下的CPU占用率为80,新改进的CPU占用率为56,可知新改进的CAPWAP实现方式的CPU占用率下降了。
表1
本发明实施例上行数据和下行数据的CAPWAP协议的实现与数据驱动无关,只需搭建合理的网络架构,即可实现CAPWAP协议。需要说明的是本发明实施例可以在如图1d和图1e所示的两种组网方式下实现CAPWAP协议,其它的CAPWAP组网方式也同样适用。
基于同一发明构思,本发明实施例中还提供了CAPWAP上行数据的处理装置和CAPWAP下行数据的处理装置,由于图3的CAPWAP上行数据的处理装置对应的方法为本发明实施例CAPWAP上行数据的处理方法,图4的CAPWAP下行数据的处理装置对应的方法为本发明实施例CAPWAP下行数据的处理方法,因此本发明实施例装置的实施可以参见系统的实施,重复之处不再赘述。
如图3所示,本发明实施例九CAPWAP上行数据的处理装置包括:
封装单元700,用于当上行数据进入虚拟驱动时,将所述上行数据进行CAPWAP封装,形成CAPWAP包;
发送单元701,用于根据IP地址,通过路由向AC发送所述CAPWAP包。
较佳地,所述封装单元700还用于:
若所述上行数据为业务数据,在通过数据驱动接收到所述业务数据后,若所述业务数据的介质访问控制MAC地址不是本地MAC地址,则通过网桥转发给虚拟驱动。
较佳地,所述封装单元700还用于:
若所述上行数据为管理数据,则将所述管理数据通过应用层发送给虚拟驱动。
较佳地,所述发送单元701具体用于:
根据IP地址,通过所述AP的上联口将所述CAPWAP包通过路由发送给对应的AC。
较佳地,所述上联口是有线口或无线口。
如图4所示,本发明实施例十CAPWAP下行数据的处理装置包括:
接收单元800,用于通过数据驱动接收CAPWAP包,其中所述CAPWAP包是由接入控制器AC将接收到的下行数据进行CAPWAP封装形成的;
协议修改单元801,用于若所述CAPWAP包是需要处理的CAPWAP包,将所述CAPWAP包的IP头中的UDP协议修改为CAPWAP协议;
解包单元802,用于对修改协议后的所述CAPWAP包进行解包操作得到下行数据。
发送单元803,用于通过虚拟驱动发送所述下行数据。
较佳地,所述解包单元802具体用于:
通过内核协议栈的传输控制协议TCP层对所述修改后的CAPWAP包进行解包操作得到下行数据;
对修改协议后的所述CAPWAP包进行解包操作得到下行数据之后,包括:
将所述下行数据发送给虚拟驱动。
较佳地,所述发送单元803具体用于:
若所述下行数据为业务数据,将所述下行数据通过虚拟驱动发送给网桥,并通过网桥发送给数据驱动;或
若所述下行数据为管理数据,且所述管理数据的IP地址是本地IP地址,将所述管理数据通过虚拟驱动发送给应用层,并通过所述应用层对管理数据进行处理。
较佳地,所述接收单元800具体用于:
通过所述AP的上联口接收所述下行数据。
较佳地,所述上联口是有线口或无线口。
在实施中,图3的本发明实施例的处理装置和图4的本发明实施例的处理装置中的各个模块可以合在一个实体,根据需要选择使用涉及上行传输的模块或使用涉及下行传输的模块。
从上述内容可以看出:本发明实施例在虚拟驱动中实现CAPWAP封装,在内核协议栈的TCP层实现了CAPWAP解包,并且虚拟驱动能够复用内核协议栈的IP层的分包和组包功能,从而降低了CPU的占用率,提高了吞吐量;在功能上实现了解耦合,因而能同时实现对业务数据和管理数据进行CAPWAP封装、CAPWAP解包;通过复用技术,使得与AC相连的上联口可以是有线口也可以是无线口。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (16)
1.一种无线接入点的控制和规范CAPWAP上行数据的处理方法,其特征在于,该方法包括:
当上行数据进入虚拟驱动时,将所述上行数据进行CAPWAP封装,形成CAPWAP包;
根据网络之间互联的协议IP地址,通过路由向接入控制器AC发送所述CAPWAP包;
在上行数据进入虚拟驱动之前,还包括:
若所述上行数据为业务数据,在通过数据驱动接收到所述业务数据后,若所述业务数据的介质访问控制MAC地址不是本地MAC地址,则通过网桥转发给虚拟驱动;
若所述上行数据为管理数据,则将所述管理数据通过应用层发送给虚拟驱动。
2.如权利要求1所述的方法,其特征在于,根据IP地址,通过路由向AC发送所述CAPWAP包,具体包括:
根据IP地址,通过所述无线接入点的上联口将所述CAPWAP包通过路由发送给对应的AC。
3.如权利要求2所述的方法,其特征在于,所述上联口是有线口或无线口。
4.一种无线接入点的控制和规范CAPWAP下行数据的处理方法,其特征在于,该方法包括:
通过数据驱动接收CAPWAP包,其中所述CAPWAP包是由接入控制器AC将接收到的下行数据进行CAPWAP封装形成的;
若所述CAPWAP包是需要处理的CAPWAP包,将所述CAPWAP包的网络之间互联的协议IP头中的用户数据报协议UDP协议修改为CAPWAP协议;
对修改协议后的所述CAPWAP包进行解包操作得到下行数据;
通过虚拟驱动发送所述下行数据。
5.如权利要求4所述的方法,其特征在于,对修改协议后的所述CAPWAP包进行解包操作得到下行数据,包括:
通过内核协议栈的传输控制协议TCP层对所述修改后的CAPWAP包进行解包操作得到下行数据;
对修改协议后的所述CAPWAP包进行解包操作得到下行数据之后,包括:
将所述下行数据发送给虚拟驱动。
6.如权利要求4所述的方法,其特征在于,通过虚拟驱动发送所述下行数据,包括:
若所述下行数据为业务数据,将所述下行数据通过虚拟驱动发送给网桥,并通过网桥发送给数据驱动;或
若所述下行数据为管理数据,且所述管理数据的IP地址是本地IP地址,将所述管理数据通过虚拟驱动发送给应用层,并通过所述应用层对管理数据进行处理。
7.如权利要求4~6任一所述的方法,其特征在于,通过数据驱动接收CAPWAP包,具体包括:
通过所述无线接入点的上联口接收所述下行数据。
8.如权利要求7所述的方法,其特征在于,所述上联口是有线口或无线口。
9.一种无线接入点的控制和规范CAPWAP上行数据的处理装置,其特征在于,该装置包括:
封装单元,用于当上行数据进入虚拟驱动时,将所述上行数据进行CAPWAP封装,形成CAPWAP包;
发送单元,用于根据网络之间互联的协议IP地址,通过路由向接入控制器AC发送所述CAPWAP包;
所述封装单元还用于:
若所述上行数据为业务数据,在通过数据驱动接收到所述业务数据后,若所述业务数据的介质访问控制MAC地址不是本地MAC地址,则通过网桥转发给虚拟驱动;
若所述上行数据为管理数据,则将所述管理数据通过应用层发送给虚拟驱动。
10.如权利要求9所述的装置,其特征在于,所述发送单元具体用于:
根据IP地址,通过所述无线接入点的上联口将所述CAPWAP包通过路由发送给对应的AC。
11.如权利要求10所述的装置,其特征在于,所述上联口是有线口或无线口。
12.一种无线接入点的控制和规范CAPWAP下行数据的处理装置,其特征在于,该装置包括:
接收单元,用于通过数据驱动接收CAPWAP包,其中所述CAPWAP包是由接入控制器AC将接收到的下行数据进行CAPWAP封装形成的;
协议修改单元,用于若所述CAPWAP包是需要处理的CAPWAP包,将所述CAPWAP包的网络之间互联的协议IP头中的用户数据报协议UDP协议修改为CAPWAP协议;
解包单元,用于对修改协议后的所述CAPWAP包进行解包操作得到下行数据;
发送单元,用于通过虚拟驱动发送所述下行数据。
13.如权利要求12所述的装置,其特征在于,所述解包单元具体用于:
通过内核协议栈的传输控制协议TCP层对所述修改后的CAPWAP包进行解包操作得到下行数据;
对修改协议后的所述CAPWAP包进行解包操作得到下行数据之后,包括:
将所述下行数据发送给虚拟驱动。
14.如权利要求12所述的装置,其特征在于,所述发送单元具体用于:
若所述下行数据为业务数据,将所述下行数据通过虚拟驱动发送给网桥,并通过网桥发送给数据驱动;或
若所述下行数据为管理数据,且所述管理数据的IP地址是本地IP地址,将所述管理数据通过虚拟驱动发送给应用层,并通过所述应用层对管理数据进行处理。
15.如权利要求12~14任一所述的装置,其特征在于,所述接收单元具体用于:
通过所述无线接入点的上联口接收所述下行数据。
16.如权利要求15所述的装置,其特征在于,所述上联口是有线口或无线口。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410653225.7A CN104469843B (zh) | 2014-11-17 | 2014-11-17 | 一种capwap数据的处理方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410653225.7A CN104469843B (zh) | 2014-11-17 | 2014-11-17 | 一种capwap数据的处理方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104469843A CN104469843A (zh) | 2015-03-25 |
CN104469843B true CN104469843B (zh) | 2018-11-06 |
Family
ID=52915043
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410653225.7A Expired - Fee Related CN104469843B (zh) | 2014-11-17 | 2014-11-17 | 一种capwap数据的处理方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104469843B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102547850A (zh) * | 2012-02-22 | 2012-07-04 | 深圳市共进电子股份有限公司 | 一种capwap隧道的实现方法 |
CN102595463A (zh) * | 2012-02-20 | 2012-07-18 | 北京傲天动联技术有限公司 | 无线环境模拟方法 |
CN103249107A (zh) * | 2013-05-21 | 2013-08-14 | 深圳市共进电子股份有限公司 | 一种提高无线热点ap吞吐量的方法 |
CN103297311A (zh) * | 2013-06-25 | 2013-09-11 | 京信通信系统(中国)有限公司 | 无线接入点控制和提供协议数据隧道的实现方法及装置 |
-
2014
- 2014-11-17 CN CN201410653225.7A patent/CN104469843B/zh not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102595463A (zh) * | 2012-02-20 | 2012-07-18 | 北京傲天动联技术有限公司 | 无线环境模拟方法 |
CN102547850A (zh) * | 2012-02-22 | 2012-07-04 | 深圳市共进电子股份有限公司 | 一种capwap隧道的实现方法 |
CN103249107A (zh) * | 2013-05-21 | 2013-08-14 | 深圳市共进电子股份有限公司 | 一种提高无线热点ap吞吐量的方法 |
CN103297311A (zh) * | 2013-06-25 | 2013-09-11 | 京信通信系统(中国)有限公司 | 无线接入点控制和提供协议数据隧道的实现方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN104469843A (zh) | 2015-03-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11196677B2 (en) | Heterogeneous multi-protocol stack method, apparatus, and system | |
CN104601432B (zh) | 一种报文传输方法和设备 | |
CN102255903B (zh) | 一种云计算虚拟网络与物理网络隔离安全方法 | |
CN104125191B (zh) | 基于以太网的点对点协议的处理方法、设备和系统 | |
CN103391296B (zh) | 一种控制器、转发器及通道建立方法和系统 | |
CN108234235A (zh) | 用于数据监控的方法、网络设备以及计算机可读存储介质 | |
CN106464596B (zh) | 开放流通信方法、系统、控制器和业务网关 | |
CN106685826B (zh) | 交换机堆叠系统、从设备、交换芯片及处理协议报文方法 | |
CN102291745A (zh) | 一种多ap测试的方法和装置 | |
ITMI20100874A1 (it) | Method and system for network virtualization | |
CN104135446B (zh) | 基于SDN实现IPv4向IPv6过渡的系统及方法 | |
CN105530681B (zh) | 业务处理方法及装置 | |
CN108880999A (zh) | 一种业务路由的方法、设备及系统 | |
CN104486167B (zh) | 基于mesh网络的并发网络性能以及网络走向的测试方法 | |
CN107404396B (zh) | 一种数据传输方法和装置 | |
CN106656905A (zh) | 防火墙集群实现方法及装置 | |
CN107003860A (zh) | 一种软件定义网络控制器及其创建方法 | |
CN102595463A (zh) | 无线环境模拟方法 | |
CN107547439A (zh) | 一种网络流量控制方法和计算节点 | |
CN103001883B (zh) | 一种基于NetFPGA的可编程虚拟路由器内部通信方法 | |
Badar et al. | Intelligent edge control with deterministic-IP based industrial communication in process automation | |
CN105577566A (zh) | 报文汇聚传输的方法、装置和系统 | |
CN104349511B (zh) | Wlan网络中ap地址的分配方法与装置 | |
CN104378315A (zh) | 一种capwap隧道数据包传输的方法及装置 | |
CN102438017A (zh) | 基于路由功能的Modbus和BACnet Ethernet协议转化装置及转化方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
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 | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20181106 Termination date: 20211117 |