一种下行报文的转发方法及AP设备与流程

文档序号:11930147阅读:303来源:国知局
一种下行报文的转发方法及AP设备与流程

本发明涉及通信技术领域,尤其涉及一种下行报文的转发方法及AP设备。



背景技术:

在分布式系统中,无线访问接入点(英文:Wireless Access Point,简称:AP)设备通常工作在桥接模式下,通过桥接引擎连接无线工作站和传输系统,负责在无线和有线介质之间转换帧。这种桥接方式通常采用简单的二层转发机制,具有比较高的转发效率。

AP设备的桥转发原理和二层交换机的转发原理类似,具体的,它将多个网络接口组织在一起形成一个逻辑上的桥,AP设备可以创建多个桥,但每个网络接口只能加入一个桥,每个桥都有各自的桥转发表。当报文从某网络接口进入设备后,根据该网络接口是否加入了桥决定报文是否进入桥转发。在桥转发流程中,首先会根据报文的入接口和源MAC地址来更新桥转发表,然后用报文的目的MAC地址在桥转发表中查找出接口,如果成功找到出接口,则将报文从对应的出接口发送,如果没有找到出接口,则使桥上除报文入接口外的其余接口都发送一份报文的拷贝。

为了满足客户的一些特殊需求一般会引入报文策略控制系统,报文在桥转发的过程中会经过该策略控制系统。该策略控制系统分别在桥转发的入口点,转发点和出口点对报文进行处理。这里的入口点是指报文进入桥转发流程时,转发点指根据桥转发表确定了报文的出接口时,出口点指报文从出接口发送时。每个处理点在策略控制系统中都会有一些规则,每一条规则代表一条报文控制策略,每一条策略会先用一些匹配项来匹配每个待处理报文,如果所有的匹配项都匹配成功则会对报文作一些策略处理,包括有丢弃,标记,修改报文或是将报文传递到应用层作深度报文解析。

但是,发明人发现,上述的桥转发系统存在以下缺点:一方面,策略控制系统可能只需要处理极少数的报文,绝大多数报文实际不需要任何控制策略,但仍然会经过策略控制系统每一条规则的比对,因此这些报文的转发效率受到了不必要的影响;另一方面,对于在下行方向上的报文,AP设备只需要处理目的MAC地址是到关联的无线工作站或到设备自身的报文,但上述的桥转发系统并不会丢弃那些未知单播报文,这些报文由于在桥转发表中没有出接口,它们会被广播到桥上的所有其它接口上,当这些报文较多时,会严重影响到正常报文的转发,从而降低报文转发的效率。



技术实现要素:

本发明的实施例提供一种下行报文的转发方法及AP设备,旨在提高报文转发的速率。

为达到上述目的,本发明的实施例采用如下技术方案:

第一方面,提供一种下行报文的转发方法,包括:

无线访问接入点AP设备从接收的下行报文中过滤出待转发报文,所述待转发报文的目的MAC地址指向所述AP设备自身或者与所述AP设备数据连接的终端设备或所述待转发报文的目的MAC地址不是单播地址;

确定所述待转发报文的转发策略;

若所述待转发报文的转发策略为快速转发策略,且终端地址接口表中存在与所述待转发报文的目的MAC地址相匹配的终端的MAC地址,则将所述待转发报文从与所述终端的MAC地址对应的所述AP设备的接口中发出,所述终端地址接口表中包括与所述AP设备数据连接的终端的MAC地址以及与所述终端的MAC地址对应的AP设备的接口;

若所述待转发报文的转发策略为常规转发策略,则将所述待转发报文提交到协议栈进行桥转发处理。

第二方面,提供一种AP设备,包括:

过滤模块,用于从接收的下行报文中过滤出待转发报文,所述待转发报文的目的MAC地址指向所述AP设备自身或者与所述AP设备数据连接的终端设备或所述待转发报文的目的MAC地址不是单播地址;

分流模块,用于确定所述过滤模块过滤出的所述待转发报文的转发策略;

转发模块,若所述分流模块确定出的所述待转发报文的转发策略为快速转发策略,且终端地址接口表中存在与所述待转发报文的目的MAC地址相匹配的终端的MAC地址,则用于将所述待转发报文从与所述终端的MAC地址对应的所述AP设备的接口中发出,所述终端地址接口表中包括与所述AP设备数据连接的终端的MAC地址以及与所述终端的MAC地址对应的AP设备的接口;若所述分流模块确定出的所述待转发报文的转发策略为常规转发策略,则用于将所述待转发报文提交到协议栈进行桥转发处理。

本发明实施例提供的下行报文的转发方法及AP设备,一方面通过从接收的下行报文中过滤出待转发报文,使得该转发的报文是发向AP设备自身或者与AP设备数据连接的终端设备的或待转发报文的目的MAC地址不是单播地址,这样能够过滤掉无关的报文,从而避免了浪费系统的中央处理器(英文:Central Processing Unit,简称:CPU)资源;另一方面,通过在现有技术中的常规转发策略的基础上,增加快速转发策略,使得当确定待转发报文的转发策略为快速转发策略,且终端地址接口表中存在与待转发报文的目的MAC地址相匹配的终端的MAC地址,则将待转发报文从与终端的MAC地址对应的AP设备的接口中发出,使得绝大部分的待转发报文经过快速转发策略处理到达终端,而小部分报文经过常规转发策略处理到达终端,从而达到了在保证待转发报文能够全部转发且不影响策略控制前提下,能够提高报文转发的速率的目的。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例提供的一种网络架构图;

图2为本发明实施例提供的一种下行报文的转发方法的方法流程图;

图3为本发明实施例提供的一种AP设备的结构示意图;

图4为本发明实施例提供的另一种AP设备的结构示意图;

图5为本发明实施例提供的一种AP设备转发报文的路径流向图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

为了便于清楚描述本发明实施例的技术方案,在本发明的实施例中,采用了“第一”、“第二”等字样对功能或作用基本相同的相同项或相似项进行区分,本领域技术人员可以理解“第一”、“第二”等字样并不对数量和执行次序进行限定。

本发明实施例提供一种网络架构,具体参照图1所示,该网络架构中包括:服务器、无线访问接入点(英文:Wireless Access Point,简称:AP)设备以及终端设备,其中:这里的AP设备包括但不限于AP1和AP2,同样这里的终端设备也包括但不限于:终端1、终端2、终端3、终端4以及终端5。由图1可知,上述的终端1、终端2以及终端3与AP1数据连接,终端4和终端5与AP2数据连接,而对于上述的终端设备与上述的AP设备的数据连接可以是有线连接,也可以是无线连接。以AP1为例进行说明,终端1与AP1有线连接,而终端2和终端3与AP1无线连接。

基于图1所示的网络架构图,下面进行说明本发明实施例提供的下行报文的转发,即从服务器经过AP1或AP2到终端的报文转发,而AP1和AP2中的下行报文的转发方法相同,下文中以AP1为例进行说明。

本发明实施例提供一种下行报文的转发方法,如图2所示,该方法包括:

201、从接收的下行报文中过滤出待转发报文。

本发明实施例中过滤出的待转发报文的目的MAC地址指向AP设备自身或者与AP设备数据连接的终端设备或待转发报文的目的MAC地址不是单播地址。示例性的,参照图1所示的架构图,以AP1为例,待转发报文的目的地址是指向AP1自身或与AP1相连的终端1、终端2或终端3或待转发报文是发向整个网络或某个网段的(即待转发报文的目的MAC地址不是单播地址)。

优选的,上述的步骤201具体包括以下内容:

201a、从终端地址接口表中查找是否存在下行报文的目的MAC地址。

a1、若终端地址接口表中存在目的MAC地址或目的MAC地址为无线AP设备的MAC地址或目的MAC地址不是单播地址,则下行报文为待转发报文。

a2、若终端地址接口表中不存在目的MAC地址且目的MAC地址不是无线AP设备的MAC地址且目的MAC是单播地址,则将下行报文丢弃。

本发明实施例中的终端地址接口表中包括与AP设备数据连接的终端的MAC地址以及与终端的MAC地址对应的AP设备的接口。该终端地址接口表中的内容的更新是由终端连接至AP设备上或从AP设备上的断开这一动作进行触发的。

示例性的,上述过程中过滤待转发报文,以图1中的AP1为例,下行报文的目的MAC地址为终端4的MAC地址,由于终端4不是AP1上的终端设备,因此在上述的AP1的终端地址接口表不存在该目的MAC地址,且该目的MAC地址也不是AP1本身,且目的MAC地址是单播地址,则需要将该报文丢弃,这就实现了尽早丢弃未知报文的目的,避免其浪费CPU资源。

可选的,当上述的下行报文为ipv6报文时,上述步骤201中还可以替换为:通过报文协议号过滤该ipv6报文。

202、确定待转发报文的转发策略。

优选的,上述的步骤202具体包括以下内容:

202a1、在终端地址接口表中查找是否存在待转发报文的目的MAC地址。

202a2、若终端地址接口表中不存在待转发报文的目的MAC地址,则采用常规转发策略转发待转发报文。

202a3、若终端地址接口表中存在待转发报文的目的MAC地址,则将待转发报文的五元组信息与流表中的匹配项匹配,确定流表中匹配成功的目标匹配项,该匹配项包括五元组信息中的至少一项;从流表中获取目标匹配项对应的转发策略。

上述的待转发报文包括三类,分别为:发向与AP设备数据连接的终端设备的待转发报文、发向AP设备自身的待转发报文以及目的MAC地址不是单播地址的待转发报文,其中:后两类报文需要采用常规转发策略进行转发,第一类报文需要查询流表根据流表中的匹配项对应的转发策略转发该类待转发报文,示例性的,上述的步骤202具体包括以下内容:

202b1、若待转发报文的目的MAC地址指向AP设备自身或待转发报文的目的MAC地址不是单播地址,则采用常规转发策略转发待转发报文。

202b2、若待转发报文的目的MAC地址指向AP设备数据连接的终端设备,则将待转发报文的五元组信息与流表中的匹配项匹配,确定流表中匹配成功的目标匹配项,该匹配项包括五元组信息中的至少一项;从流表中获取目标匹配项对应的转发策略。

可选的,上述的步骤202a3和202b2中,还可以用待转发报文的三元组或其他信息进行确定转发策略。而上述的使用五元组进行匹配仅仅是这里给出的最优的方案。

可选的,上述的流表是用来对下行报文分流的依据,其表项记录了报文的匹配项及转发策略。为了提高分流的效率,此处仅根据报文的五元组(协议,源IP,目的IP,源端口,目的端口)作报文匹配,转发方法也仅分为快速转发,原始转发和丢弃三种,对报文更精细的策略控制由桥转发中的策略控制系统来实现。

示例性的,上述的流表中的表项和策略控制系统中的规则相关,保证需要经过策略控制系统处理的待转发报文一定是按照桥转发处理的,这样对这些报文的策略控制将不受影响。同时该流表不能对待转发报文作更精细的控制,它不可避免地可能会使部分不必经策略控制系统处理的报文也按照桥转发流程处理,例如当策略控制系统需要处理到AP设备的wlan1接口所关联的终端的dns response报文,由于上述的流表只匹配报文五元组,根据报文的五元组可能并不能判断待转发报文是否是到wlan1接口的,因此到其它wlan接口的dns response报文也只能按照桥转发处理,尽管这样,流表的设计原则是在保证不影响策略控制功能的前提下让尽可能少的报文按照桥转发流程转发,而让绝大多数报文仍然按照快速转发方式处理,它们不会再经桥转发的处理,因此也就不会受到策略控制系统的影响。

203、若待转发报文的转发策略为快速转发策略,且终端地址接口表中存在与待转发报文的目的MAC地址相匹配的终端的MAC地址,则将待转发报文从与终端的MAC地址对应的AP设备的接口中发出。

示例性的,以AP1为例,上述的终端地址接口表中的具体内容可以参照下面的表1。

表1

需要说明的是,上述的表1中的内容不仅仅局限于上述的3个终端,且上述的终端的MAC地址对应的AP1的接口在这里仅仅是以示例进行说明,在具体的应用中以与AP设备连接的终端设备的个数为准,而终端MAC地址对应的AP1的接口也以具体连接的接口为准。

示例性的,当确定出的待转发报文的转发策略为快速转发策略,并且在上述的表1中找到与待转发报文的目的MAC地址相匹配的是终端1的MAC地址,那么将该待转发报文按照终端1的MAC地址对应的AP设备的有线接口a1中直接发出,使得该待转发报文不必经过漫长的桥转发处理,从而提高了报文的转发速率。

204、若待转发报文的转发策略为常规转发策略,则将待转发报文提交到协议栈进行桥转发处理。

示例性的,上述的桥转发原理如下:该桥转发的原理与二层交换机的转发原理类似,它将多个网络接口组织在一起形成一个逻辑上的桥,AP设备可以创建多个桥,但每个网络接口只能加入一个桥,每个桥都有各自的桥转发表。当报文从某网络接口进入设备后,根据该网络接口是否加入了桥决定报文是否进入桥转发。在桥转发流程中,首先会根据报文的入接口和源MAC地址来更新桥转发表,然后用报文的目的MAC地址在桥转发表中查找出接口,如果成功找到出接口,则将报文从对应的出接口发送,如果没有找到出接口,则使桥上除报文入接口外的其余接口都发送一份报文的拷贝。为了满足客户的一些特殊需求一般会引入报文策略控制系统,报文在桥转发的过程中会经过该策略控制系统。该策略控制系统分别在桥转发的入口点,转发点和出口点对报文进行处理。这里的入口点是指报文进入桥转发流程时,转发点指根据桥转发表确定了报文的出接口时,出口点指报文从出接口发送时。每个处理点在策略控制系统中都会有一些规则,每一条规则代表一条报文控制策略,每一条策略会先用一些匹配项来匹配每个待处理报文,如果所有的匹配项都匹配成功则会对报文作一些策略处理,包括有丢弃,标记,修改报文或是将报文传递到应用层作深度报文解析。

需要说明的是,本发明实施例中所采用的桥转发原理为现有技术中的桥转发,这样可以保证需要有特殊的控制策略的报文能够完整转发,避免将该部分报文丢失。

本发明实施例提供的下行报文的转发方法,一方面通过从接收的下行报文中过滤出待转发报文,使得待转发报文是发向AP设备自身或者与AP设备数据连接的终端设备的或待转发报文的目的MAC地址不是单播地址,这样能够过滤掉无关的报文,从而避免了浪费系统的中央处理器(英文:Central Processing Unit,简称:CPU)资源;另一方面,通过在现有技术中的常规转发策略的基础上,增加快速转发策略,使得当确定待转发报文的转发策略为快速转发策略,且终端地址接口表中存在与待转发报文的目的MAC地址相匹配的终端的MAC地址,则该待转发报文从与终端的MAC地址对应的AP设备的接口中发出,使得绝大部分的待转发报文经过快速转发策略处理到达终端,而小部分报文经过常规转发策略处理到达终端,从而达到了在保证待转发报文能够全部转发且不影响策略控制功能前提下,能够提高报文转发的速率的目的。

可选的,为了使得发往与AP设备连接的终端设备的大多数报文都进行快速转发,从而提高下行报文转发的速率,该方法还包括以下内容:

若未确定出与待转发报文的五元组信息相匹配的目标匹配项时,则采用快速转发策略转发待处理报文。

可选的,为了能够对AP设备接收的发往AP设备本身以及与AP设备连接的终端设备的报文都进行过滤,从而完成后续的下行报文转发的过程,该方法还包括以下内容:

当确定下行报文为capwap数据报文时,通过capwap协议解析所述capwap数据报文,并对capwap数据报文解析后获取的内层报文进行过滤,过滤出目的MAC地址指向AP设备自身或者与AP设备数据连接的终端设备、或目的MAC地址不是单播地址的内层报文作为待转发报文。

可选的,为了保证上述的capwap数据报文的完整性,从而可以正确的解析出内层报文,在解析capwap数据报文之前,该方法还包括:对上述的capwap数据报文进行预处理,该预处理主要包括检查该capwap数据报文的合法性,并对该capwap数据报文的外层ip分片进行报文重组。

下面将基于图2对应的下行报文的转发方法的实施例中的相关描述对本发明实施例提供的一种AP设备进行介绍。以下实施例中与上述实施例相关的技术术语、概念等的说明可以参照上述的实施例,这里不再赘述。

本发明实施例提供一种AP设备,如图3所示,该AP设备3包括:过滤模块31、分流模块32以及转发模块33,其中:

过滤模块31,用于从接收的下行报文中过滤出待转发报文。

本发明实施例中的待转发报文的目的MAC地址指向AP设备自身或者与所述AP设备数据连接的终端设备或待转发报文的目的MAC地址不是单播地址。

分流模块32,用于确定过滤模块过滤出的待转发报文的转发策略。

转发模块33,若分流模块确定出的待转发报文的转发策略为快速转发策略,且终端地址接口表中存在与待转发报文的目的MAC地址相匹配的终端的MAC地址,则用于将待转发报文从与终端的MAC地址对应的AP设备的接口中发出;若分流模块确定出的待转发报文的转发策略为常规转发策略,则用于将待转发报文提交到协议栈进行桥转发处理。

本发明实施例中的终端地址接口表中包括与AP设备数据连接的终端的MAC地址以及与终端的MAC地址对应的AP设备的接口。

示例性的,上述的过滤模块31具体用于:

从终端地址接口表中查找是否存在下行报文的目的MAC地址;

若终端地址接口表中存在所述目的MAC地址或所述目的MAC地址为无线AP设备的MAC地址或目的MAC地址不是单播地址,则下行报文为待转发报文。

若终端地址接口表中不存在所述目的MAC地址且所述目的MAC地址不是无线AP设备的MAC地址且目的MAC地址是单播地址,则将下行报文丢弃。

优选的,上述的分流模块32具体用于:

在终端地址接口表中查找是否存在待转发报文的目的MAC地址。

若终端地址接口表中不存在待转发报文的目的MAC地址,则采用常规转发策略转发待转发报文。

若终端地址接口表中存在待转发报文的目的MAC地址,则将待转发报文的五元组信息与流表中的匹配项匹配,确定流表中匹配成功的目标匹配项,匹配项包括五元组信息中的至少一项;从流表中获取目标匹配项对应的转发策略。

示例性的,上述的分流模块32具体用于:

若待转发报文的目的MAC地址指向AP设备自身或待转发报文的目的MAC地址不是单播地址,则采用常规转发策略转发待转发报文。

若待转发报文的目的MAC地址指向AP设备数据连接的终端设备,则将待转发报文的五元组信息与流表中的匹配项匹配,确定流表中匹配成功的目标匹配项,匹配项包括五元组信息中的至少一项;从流表中获取目标匹配项对应的转发策略。

可选的,上述的分流模块32,还用于未确定出与待转发报文的五元组信息相匹配的目标匹配项时,则采用快速转发策略转发待处理报文。

可选的,如图4所示,上述的AP设备3还包括:解析模块34,其中:

解析模块34,当确定下行报文为capwap(中文:隧道协议)数据报文时,用于通过capwap协议解析capwap数据报文,并将capwap数据报文解析后获取的内层报文发送给过滤模块31。

可选的,如图4所示,上述的AP设备3还包括预处理模块35,其中:

预处理模块35主要用于检查该capwap数据报文的合法性,并对该capwap数据报文的外层ip分片进行报文重组。

本发明实施例提供的AP设备,一方面通过从接收的下行报文中过滤出待转发报文,使得该转发的报文是发向AP设备自身或者与AP设备数据连接的终端设备的或待转发报文的目的MAC地址不是单播地址,这样能够过滤掉无关的报文,从而避免了浪费系统的CPU资源;另一方面,通过在现有技术中的常规转发策略的基础上,增加快速转发策略,使得当确定待转发报文的转发策略为快速转发策略,且终端地址接口表中存在与待转发报文的目的MAC地址相匹配的终端的MAC地址,则将待转发报文从与终端的MAC地址对应的AP设备的接口中发出,使得绝大部分的待转发报文经过快速转发策略处理到达终端,而小部分报文经过常规转发策略处理到达终端,从而达到了在保证待转发报文能够全部转发且不影响策略控制功能前提下,能够提高报文转发的速率的目的。

本发明实施例提供的上述的AP设备具备以下4大处理功能:预处理、解析处理、报文过滤处理以及报文转发处理。如图5所示,该下行报文首先经过图5中的有线驱动处理,经过有线驱动接收该下行报文后,调用上述的AP设备提供的4大功能分别对该下行报文进行处理,并最终实现对数据进行分流,使得小部分待转发报文仍然按照常规转发策略处理,即经过桥转发和策略控制系统的处理;而大部分待转发报文按照快速转发策略处理,直接找到出口,然后经过无线驱动的处理后从该出口发出最终到达终端设备。

上述的快速策略转发相对于常规策略转发来说,具有更少的处理流程,不需要经过桥转发的处理,也不会经过策略控制系统的处理,而是从有线驱动直接转发到无线驱动,可以显著提高下行报文的转发速率。

在本申请所提供的几个实施例中,应该理解到,所揭露的AP设备,可以通过其它的方式实现。例如,以上所描述的AP设备的实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。

另外,在本发明各个实施例中的各业务板可以集成在一个处理单元中,也可以是各个模块单独物理包括,也可以两个或两个以上模块集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件业务板的形式实现。

上述以软件业务板的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件业务板存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(英文:Read-Only Memory,简称:ROM)、随机存取存储器(英文:Random Access Memory,简称:RAM)、磁碟或者光盘等各种可以存储程序代码的介质。

最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1