报文转发方法、装置及系统的制作方法
【专利摘要】本发明提供一种报文转发方法、装置及系统,其中报文转发方法包括获取第一接口所接收到的第一报文的目的地址,第一接口属于第一转发桥;在第一地址表中查询与第一报文的目的地址对应的出接口,第一地址表与第一转发桥对应;若与第一报文的目的地址对应的出接口为隧道接口,则根据隧道协议对第一报文进行封装,并将封装后的第一报文通过第三接口发送至第一报文的目的地址对应的网络设备,其中,第三接口属于第二转发桥,第三接口用于连接网络设备。在第一转发桥上转发报文时,无法查找到第二转发桥上的地址表,当对属于第一转发桥的第一接口接收到的报文进行转发时,不会出现错误地采用本地转发模式转发报文的情况,有效地保证了报文转发的正确性。
【专利说明】报文转发方法、装置及系统
【技术领域】
[0001]本发明涉及通信技术,尤其涉及一种报文转发方法、装置及系统。
【背景技术】
[0002]随着无线通信技术的发展,接入点(Access Point,简称AP)设备得到了更为广泛的应用。现有技术中的AP由接入控制器(Access Controller,简称AC)统一管理,AP对报文进行转发时可以采用集中转发模式或本地转发模式。AP采用集中转发模式对报文进行转发时,将从射频接口或以太接口接收到的报文进行无线接入点控制协议(Control AndProvisioning of WirelessAccess Points,简称 CAPWAP)封装,并将封装后的报文通过CAPffAP隧道发送到AC,由AC集中将报文转发给相应的设备,其中CAPWAP协议定义了 AP与AC之间的通信规则,为实现AP和AC之间的互通性提供通用封装和传输机制,CAPffAP隧道是AP与AC之间的传输隧道。AP采用本地转发模式时,将从射频接口或以太接口接收到的报文直接转发给相应的设备,无需经过AC对报文进行转发,AC仅对该AP起到管理的作用。
[0003]同一个AP中可以包括一个或多个虚拟AP (Virtual AP,简称VAP),每个VAP对报文的转发模式也可以为集中转发模式或本地转发模式。当同一台AP中的各VAP的转发模式均为集中转发模式时,各VAP均可按照集中转发模式正常地对报文进行转发;当同一台AP中的各VAP的转发模式均为本地转发模式时,各VAP均可按照本地转发模式正常地对报文进行转发。
[0004]但是,当同一个AP中既包括采用集中转发模式的VAP,又包括采用本地转发模式的VAP时,如果AP的介质访问控制(Media Access Control,简称MAC)表中已经保存有本地转发模式的VAP与目标设备的出接口的对应关系,当采用集中转发模式的VAP也要给该目标设备转发报文时,根据MAC表将会查找到保存的与本地转发模式的VAP对应的该目标设备的出接口,从而直接将报文通过该出接口转发给该目标设备,即进行了本地转发,而非集中转发。因此,在这样的情况下,采用集中转发模式的VAP会出现错误地采用本地转发模式转发报文的技术问题。
【发明内容】
[0005]本发明提供一种报文转发方法、装置及系统,用于解决采用集中转发模式的VAP会出现错误地采用本地转发模式转发报文的技术问题。
[0006]第一方面,本发明提供一种报文转发方法,应用于包括第一转发桥和第二转发桥的接入点设备,包括:
[0007]获取第一接口所接收到的第一报文的目的地址,所述第一接口属于所述第一转发桥;
[0008]在第一地址表中查询与所述第一报文的目的地址对应的出接口,所述第一地址表与所述第一转发桥对应;
[0009]若与所述第一报文的目的地址对应的出接口为隧道接口,则根据隧道协议对所述第一报文进行封装,并将封装后的第一报文通过第三接口发送至所述第一报文的目的地址对应的网络设备,其中,所述第三接口属于所述第二转发桥,所述第三接口用于连接网络设备。
[0010]在第一个方面的第一种可能的实现方式中,所述方法还包括:
[0011]获取所述第二接口所接收到的第二报文的目的地址,所述第二接口属于第二转发桥;
[0012]在第二地址表中查询与所述第二报文的目的地址对应的出接口,所述第二地址表与所述第二转发桥对应;
[0013]若与所述第二报文的目的地址对应的出接口为所述第三接口,则将所述第二报文通过所述第三接口发送至所述第二报文的目的地址对应的网络设备;
[0014]或者,若与所述第二报文的目的地址对应的出接口为第四接口,则将所述第二报文通过所述第四接口发送至所述第二报文的目的地址对应的本地设备,其中,所述第四接口属于所述第二转发桥,所述第四接口用于连接本地设备。
[0015]在第一个方面的第二种可能的实现方式中,所述方法还包括:
[0016]若与所述第一报文的目的地址对应的出接口为所述第一转发桥与所述第二转发桥之间的虚拟接口,则将所述第一报文通过所述虚拟接口发送至所述第四接口,以通过所述第四接口将所述第一报文发送至所述第一报文的目的地址对应的本地设备。
[0017]在第一个方面的第三种可能的实现方式中,所述方法还包括:
[0018]若在所述第一地址表中未查询到与所述第一报文的目的地址对应的出接口,则根据所述第一报文的目的地址,通过所述虚拟接口向所述第二转发桥上的各接口进行广播寻址,以使所述第二转发桥上的各接口判断所述第一报文的目的地址是否为所连接的设备的地址;
[0019]在通过所述虚拟接口,接收到所述第一报文的目的地址对应的本地设备所返回的响应消息之后,将所述虚拟接口作为所述第一报文的目的地址对应的出接口更新所述第一地址表。
[0020]第二方面,本发明还提供一种接入点设备,包括第一转发桥和第二转发桥,以及第一接口、第二接口、第三接口和第四接口;其中,所述第一接口属于所述第一转发桥,所述第二接口、第三接口和第四接口属于所述第二转发桥,所述第三接口用于连接网络设备,所述第四接口用于连接本地设备;
[0021]所述第一转发桥,用于获取所述第一接口所接收到的第一报文的目的地址;在第一地址表中查询与所述第一报文的目的地址对应的出接口,所述第一地址表与所述第一转发桥对应;当与所述第一报文的目的地址对应的出接口为隧道接口时,根据隧道协议对所述第一报文进行封装,并将封装后的第一报文通过第三接口发送至所述第一报文的目的地址对应的网络设备;
[0022]所述第二转发桥,用于获取所述第二接口所接收到的第二报文的目的地址;在第二地址表中查询与所述第二报文的目的地址对应的出接口,所述第二地址表与所述第二转发桥对应;当与所述第二报文的目的地址对应的出接口为所述第三接口,则将所述第二报文通过所述第三接口发送至所述第二报文的目的地址对应的网络设备;或者,当与所述第二报文的目的地址对应的出接口为所述第四接口,则将所述第二报文通过所述第四接口发送至所述第二报文的目的地址对应的本地设备。
[0023]在第二个方面的第一种可能的实现方式中,所述接入点设备还包括虚拟接口,所述虚拟接口为所述第一转发桥和所述第二转发桥之间的接口。
[0024]在第二个方面的第二种可能的实现方式中,所述第一转发桥还用于:
[0025]当与所述第一报文的目的地址对应的出接口为所述虚拟接口时,将所述第一报文通过所述虚拟接口发送至所述第四接口,以通过所述第四接口将所述第一报文发送至所述第一报文的目的地址对应的本地设备。
[0026]在第二个方面的第三种可能的实现方式中,所述第一转发桥还用于:
[0027]当在所述第一地址表中未查询到与所述第一报文的目的地址对应的出接口时,根据所述第一报文的目的地址,通过所述虚拟接口向所述第二转发桥上的各接口进行广播寻址,以使所述第二转发桥上的各接口判断所述第一报文的目的地址是否为所连接的设备的地址;当通过所述虚拟接口,接收到所述第一报文的目的地址对应的本地设备所返回的响应消息之后,将所述虚拟接口作为所述第一报文的目的地址对应的出接口更新所述第一地址表。
[0028]第三方面,本发明还提供一种报文处理系统,包括上述接入点设备以及接入点控制器,所述接入点设备与所述接入点控制器通过所述接入点设备的第三接口通信连接;
[0029]所述接入点控制器,用于从所述接入点设备接收封装后的第一报文,所述第一报文中携带有目的地址;对所述封装后的第一报文进行解封装,并将所述第一报文转发至所述第一报文的目的地址对应的设备。
[0030]本发明实施例提供的报文转发方法、装置及系统,在属于第一转发桥的第一接口接收到第一报文之后,在第一地址表中查询出接口,当出接口为隧道接口时,将第一报文送入隧道接口进行封装,并将封装后的第一报文通过位于第二转发桥的第三接口输出,由于第一转发桥采用的报文转发模式是集中转发模式,第二转发桥采用的报文转发模式是本地转发模式,并且两个转发桥的地址表是独立设置的,在第一转发桥上转发报文时,无法查找到第二转发桥上的地址表,因此,对属于第一转发桥的第一接口接收到的报文进行转发时,不会出现错误地采用本地转发模式转发报文的情况,相应地,对属于第二转发桥的第二接口接收到的报文进行转发时,也不会出现错误地采用集中转发模式转发报文的情况,有效地保证了报文转发的正确性。
【专利附图】
【附图说明】
[0031]图1为本发明实施例提供的报文转发方法的流程图;
[0032]图2为本发明实施例提供的另一报文转发方法的流程图;
[0033]图3为本发明实施例提供的又一报文转发方法的流程图
[0034]图4为本发明实施例提供的接入点AP的结构示意图;
[0035]图5为本发明实施例提供的另一接入点AP的结构示意图;
[0036]图6为本发明实施例提供的报文处理系统的结构示意图。
【具体实施方式】
[0037]图1为本发明实施例提供的报文转发方法的流程图,该报文转发方法应用于包括第一转发桥和第二转发桥的接入点设备,如图1所示,该方法包括:
[0038]101、获取第一接口所接收到的第一报文的目的地址。其中,所述第一接口属于所述第一转发桥。
[0039]具体的,本发明实施例中的AP包括两个转发桥,分别为第一转发桥和第二转发桥。其中,转发桥即为软件二层交换(Software Switch, SSW),转发桥也可被称为软件桥。
[0040]所述第一转发桥采用集中转发模式对报文进行转发,所述第二转发桥采用本地转发模式对报文进行转发。第一转发桥和第二转发桥在逻辑上是隔离的,即,所述第一转发桥和所述第二转发桥物理上在同一个AP上,但是所述第一转发桥和所述第二转发桥分别拥有独立的地址表,分别是与第一转发桥对应的第一地址表,以及与第二转发桥对应的第二地址表。地址表中存储的地址与出接口的——对应关系,其中,地址可以为MAC地址。
[0041]本发明实施例提供的报文转发方法应用在具有两个转发桥的AP上。
[0042]该AP包括属于第一转发桥的一个或多个第一接口,以及属于第二转发桥的一个或多个第二接口,第一接口和第二接口均可以为物理以太接口或者物理射频接口。AP可以通过第一接口或第二接口与终端设备连接,也就是说,终端设备可以通过第一接口或第二接口与该AP进行通信连接。
[0043]AP的第一接口和第二接口为射频接口时,可以通过无线的方式连接终端设备;第一接口和第二接口为以太接口时,可以通过有线的方式连接终端设备。终端设备为可以利用有线或无线的方式与AP建立连接的终端,例如手机、平板电脑和个人电脑等终端设备。
[0044]由于第一转发桥和第二转发桥分别具有独立的地址表,AP对于从属于第一转发桥的第一接口接收到的报文,利用第一地址表查询相应的出接口,对于从属于第二转发桥的第二接口接收到的报文,利用第二地址表查询相应的出接口,由于两张地址表是独立设置、相互隔离的,因此,能够解决对本应采用集中转发模式进行转发的报文,错误地采用本地转发模式进行转发的问题。
[0045]本发明中所述的数据发送方向为,终端设备将报文发送给AP,AP将报文进行处理之后转发给AC或者其他网络设备。对于AC或者其他网络设备通过AP向终端设备返回数据的情况,本领域技术人员可知,AC或者其他网络设备根据与本发明实施例中相反的路由方向,即可将数据通过AP返回给终端设备。
[0046]终端设备与AP的第一接口连接之后,向AP发送报文,即,将报文发送给AP的第一接口 ;AP通过第一接口接收终端设备发送的报文。本实施例中,为方便叙述,将AP的第一接口所接收到报文称为第一报文。具体的,第一转发桥通过第一接口接收到第一报文之后,获取该第一报文的目的地址。
[0047]102、在第一地址表中查询与所述第一报文的目的地址对应的出接口。其中,所述第一地址表与所述第一转发桥对应。
[0048]由于第一接口是属于第一转发桥的,因此AP的第一转发桥从第一接口接收到第一报文之后,在第一地址表中查找是否存在与第一报文的目的地址对应的出接口。具体的,第一转发桥根据所述第一报文的目的地址查询所述第一地址表。
[0049]103、若与所述第一报文的目的地址对应的出接口为隧道接口,则根据隧道协议对所述第一报文进行封装,并将封装后的第一报文通过第三接口发送至所述第一报文的目的地址对应的网络设备。其中,所述第三接口属于所述第二转发桥,所述第三接口用于连接网络设备。
[0050]具体的,如果查找到与第一报文的目的地址对应的出接口,且与第一报文的目的地址对应的出接口为隧道接口,第一转发桥则根据隧道协议对所述第一报文进行封装,并将封装后的第一报文通过第三接口发送出去。
[0051]执行步骤103是对所述第一报文按照集中转发模式进行转发。具体的,在查找到的与第一报文的目的地址对应的出接口为隧道接口时,表示要对所述第一报文按照集中转发模式进行转发。具体的,先由隧道接口对所述第一报文进行封装,然后通过第三接口将封装后的第一报文发送给AC,通过AC将所述第一报文至所述第一报文的目的地址对应的设备。
[0052]其中,第三接口是属于第二转发桥的物理接口,AP通过第三接口与其他网络设备,例如AC,服务器,网络管理设备等,进行连接。
[0053]相应地,AP通过第三接口,从网络设备接收报文,以将接收到的报文发送给相应的终端设备。隧道接口是AP上进行业务处理的逻辑接口,并非物理接口,属于所述第一转发桥;隧道接口将第一报文进行封装之后,还需要将封装后的报文通过物理接口,即所述第三接口发送给AC,实现对所述第一报文的集中转发。虽然封装后的第一报文是通过第三接口发送出去的,但是并不要经过第二转发桥的处理。
[0054]本实施例中,所述隧道接口用于将第一报文进行封装,即将第一报文封装为适合于在CAPWAP隧道中传输的报文格式;相应地,对于相反的报文传输方向,还可以用于对从CAPWAP隧道接收到的报文进行解封装。此外,当AP所连接的网络设备采用的通信协议是三层协议时,该隧道接口还可以用于将第一报文封装为适合于在三层协议中传输的报文,能够实现虚拟局域网(Virtual Local Area Network, VLAN)级别的业务。具体的,隧道接口对报文进行封装的实现方式,可以采用与现有技术中类似的是实现方式,此处不再赘述。
[0055]采用本发明实施例提供的报文转发方法,隧道接口可以通过第三接口与其他设备进行报文收发,具体的,隧道接口通过第三接口进行报文的收发的实现方式可以为,在报文中封装下一跳的接口地址,例如第三接口的地址是报文从隧道接口输出后的下一跳的接口地址,则报文将通过第三接口发送出去。但是由于第三接口与隧道接口是分别连接在两个转发桥上的,使得隧道接口和第三接口被隔离开。因此,如果AP采用集中转发模式将广播报文发送给AC之后,即使AC将该广播报文发送给同一个VLAN下的各AP,所述第三接口接收到该广播报文,也仅将该广播报文在所连接的转发桥,即第二转发桥内广播,不会发送给隧道接口所连接的转发桥,即第一转发桥,该广播报文也就不会再次被采用集中转发模式发送给AC,从而避免了接口成环问题的出现。
[0056]本发明实施例提供的报文转发方法,在属于第一转发桥的第一接口接收到第一报文之后,在第一地址表中查询出接口,当出接口为隧道接口时,将第一报文送入隧道接口进行封装,并将封装后的第一报文通过位于第二转发桥的第三接口输出,由于第一转发桥采用的报文转发模式是集中转发模式,第二转发桥采用的报文转发模式是本地转发模式,并且两个转发桥的地址表是独立设置的,在第一转发桥上转发报文时,无法查找到第二转发桥上的地址表,因此,对属于第一转发桥的第一接口接收到的报文进行转发时,不会出现错误地采用本地转发模式转发报文的情况,相应地,对属于第二转发桥的第二接口接收到的报文进行转发时,也不会出现错误地采用集中转发模式转发报文的情况,有效地保证了报文转发的正确性。
[0057]图2为本发明实施例提供的另一报文转发方法的流程图,在本发明图1所示实施例的基础上,进一步地介绍该报文转发方法。如图2所示,该方法包括:
[0058]201、第一转发桥获取第一接口所接收到的第一报文的目的地址。具体参见101,在此不再赘述。
[0059]202、第一转发桥在第一地址表中查询与所述第一报文的目的地址对应的出接口。具体参见102,在此不再赘述。
[0060]203、若查找到与所述第一报文的目的地址对应的出接口为隧道接口,则根据隧道协议对所述第一报文进行封装,并将封装后的第一报文通过第三接口发送至所述第一报文的目的地址对应的网络设备。具体参见103,在此不再赘述。
[0061]204、若查找到与所述第一报文的目的地址对应的出接口为所述第一转发桥与所述第二转发桥之间的虚拟接口,则将所述第一报文通过所述虚拟接口发送至所述第二转发桥上的所述第四接口。以通过所述第四接口将所述第一报文发送至所述第一报文的目的地址对应的本地设备。
[0062]在从第一接口接收到第一报文之后,第一转发桥根据第一报文的目的地址查询第一地址表,若查找到与第一报文的目的地址对应的出接口,不是隧道接口,而是第一转发桥与第二转发桥之间的虚拟接口,则说明不需要对第一报文采用集中转发模式进行转发,而是通过第一转发桥与第二转发桥之间的虚拟接口,采用本地转发模式对报文进行转发。具体的,若查找到与第一报文的目的地址对应的出接口是第一转发桥与第二转发桥之间的虚拟接口,表示所述第一报文是要发送给连接到该AP的设备,则无需通过AC进行集中转发,可以利用第一转发桥与第二转发桥之间的虚拟接口,将报文转发给该设备,从而提高报文转发效率。
[0063]具体来说,由于第四接口是用于连接本地设备的通信接口,可以为物理以太口或物理射频口。,因此,可以直接将打印机等本地设备连接在该第四接口上。当第一转发桥接收到的报文的目的地址为该本地设备的地址,而且对应的出接口为第一转发桥与第二转发桥之间的虚拟接口时,第一转发桥将报文通过该虚拟接口发送到第四接口所连接的本地设备,从而实现了报文的本地转发。
[0064]可以理解的是,如果执行204,表示第一地址表中已经将该虚拟接口作为第一报文的目的地址对应的出接口。如果在第一地址表中尚未将该虚拟接口作为第一报文的目的地址对应的出接口时,则在执行204之前还可以包括地址学习的过程,具体为:
[0065]若在所述第一地址表中未查询到与所述第一报文的目的地址对应的出接口,则根据所述第一报文的目的地址,通过所述虚拟接口向所述第二转发桥上的各接口进行广播寻址,以使所述第二转发桥上的各接口判断所述第一报文的目的地址是否为所连接的设备的地址;
[0066]在通过所述虚拟接口,接收到所述第一报文的目的地址对应的本地设备所返回的响应消息之后,将所述虚拟接口作为所述第一报文的目的地址对应的出接口更新所述第一地址表。
[0067]具体来说,在从第一接口接收到第一报文之后,第一转发桥根据所述第一报文的目的地址查询第一地址表,若未查找到第一报文的目的地址对应的出接口,说明不需要对第一报文采用集中转发模式进行转发;但是需要根据第一报文的目的地址,通过所述虚拟接口向第二转发桥上的各接口进行广播,以寻找与该第一报文的目的地址对应的设备。当第一转发桥通过该虚拟接口从第二转发桥接收到设备返回的响应消息之后,将该虚拟接口作为与该第一报文的目的地址对应的出接口,更新到第一地址表,完成地址学习的过程。当第一转发桥再次接收到包含该第一报文的目的地址的报文时,可以直接从其第一地址表中查询到与该第一报文的目的地址对应的出接口为该虚拟接口。
[0068]本发明实施例提供的报文转发方法,在从第一接口接收到第一报文之后,第一转发桥在第一地址表中查询出接口,当出接口为第一转发桥与第二转发桥之间的虚拟接口时,将第一报文通过所述虚拟接口发送给第二转发桥上的第四接口,从而使得第一转发桥转发报文时,不仅可以采用集中转发模式,还可以根据需要采用本地转发模式对报文进行转发,有效地提高了报文转发的效率。
[0069]图3为本发明实施例提供的又一报文转发方法的流程图,在本发明图1或图2所示实施例的基础上,该报文转发方法还可以包括:
[0070]301、获取所述第二接口所接收到的第二报文的目的地址。其中,所述第二接口属
于第二转发桥。
[0071]终端设备与第二接口连接之后,向AP发送报文时,即将报文发送给AP的第二接口。AP通过第二接口接收终端设备发送的报文。本实施例中,为方便叙述,将AP的第二接口所接收到的报文称为第二报文,具体的,第一转发桥通过第二接口接收到第二报文之后,获取该第二报文的目的地址。
[0072]302、在第二地址表中查询与所述第二报文的目的地址对应的出接口。其中,所述第二地址表与所述第二转发桥对应。
[0073]由于第二接口是属于第二转发桥的,因此AP从第二接口接收到第二报文之后,在第二地址表中查找是否存在与第二报文的目的地址对应的出接口。具体的,第二转发桥根据所述第二报文的目的地址查询所述第二地址表。
[0074]303、若与所述第二报文的目的地址对应的出接口为所述第三接口,则将所述第二报文通过所述第三接口发送至所述第二报文的目的地址对应的网络设备;或者,若与所述第二报文的目的地址对应的出接口为第四接口,则将所述第二报文通过所述第四接口发送至所述第二报文的目的地址对应的本地设备。其中,所述第四接口属于所述第二转发桥,所述第四接口用于连接本地设备。
[0075]如果第二地址表中存在与第二报文的目的地址对应的出接口,该出接口可能为第三接口或第四接口。
[0076]若在第二地址表中查询到的出接口为第三接口,则可以直接将第二报文通过第三接口输出。由于第二转发桥是采用本地转发模式对报文进行转发的,不会根据隧道协议对第二报文进行封装,第二报文直接通过第二转发桥的第三接口发送给第二报文的目的地址对应的设备,而不是通过AC集中转发。在这样的情况下,AC不接收业务报文,主要用于对AP进行管理。
[0077]若在第二地址表中查询到的与所述第二报文的目的地址对应的出接口为第四接口,则AP可以直接将第二报文通过该第四接口输出。
[0078]AP将第二报文通过第三接口或第四接口将第二报文发送给第二报文中目的地址对应的设备。
[0079]需要说明的是,第一转发桥与第二转发桥在将报文发送给相应的出接口之前,对报文进行必要性的处理时可以采用与现有技术中类似的实现方式,此处不再赘述。
[0080]本发明实施例提供的报文转发方法,在属于第二转发桥的第二接口接收到第二报文之后,在第二地址表中查询出接口,并将第二报文通过相应的出接口输出,结合上述实施例实现了在一台AP中既可以实现对报文进行集中转发,也可以对报文进行本地转发,并且不会出现错误地对需要采用集中转发的报文进行本地转发的情况,也不会出现错误地对需要采用本地转发的报文进行集中转发的情况,有效地保证了报文转发的正确性和对报文转发的效率。
[0081]图4为本发明实施例提供的接入点AP的结构示意图,如图4所示,该AP包括第一转发桥11和第二转发桥12,以及第一接口 13、第二接口 14、第三接口 15和第四接口 16 ;其中,所述第一接口 13属于所述第一转发桥11,所述第二接口 14、第三接口 15和第四接口 16属于所述第二转发桥12,所述第三接15 口用于连接网络设备,所述第四接口 16用于连接本地设备;
[0082]所述第一转发桥11,用于获取所述第一接口 13所接收到的第一报文的目的地址;在第一地址表中查询与所述第一报文的目的地址对应的出接口,所述第一地址表与所述第一转发桥11对应;当与所述第一报文的目的地址对应的出接口为隧道接口时,根据隧道协议对所述第一报文进行封装,并将封装后的第一报文通过第三接口 15发送至所述第一报文的目的地址对应的网络设备;
[0083]所述第二转发桥12,用于获取所述第二接口 14所接收到的第二报文的目的地址;在第二地址表中查询与所述第二报文的目的地址对应的出接口,所述第二地址表与所述第二转发桥12对应;当与所述第二报文的目的地址对应的出接口为所述第三接口 15,则将所述第二报文通过所述第三接口 15发送至所述第二报文的目的地址对应的网络设备;或者,当与所述第二报文的目的地址对应的出接口为所述第四接口 16,则将所述第二报文通过所述第四接口 16发送至所述第二报文的目的地址对应的本地设备。
[0084]本发明实施例提供的接入点AP,在属于第一转发桥的第一接口接收到第一报文之后,在第一地址表中查询出接口,当出接口为隧道接口时,将第一报文送入隧道接口进行封装,并将封装后的第一报文通过位于第二转发桥的第三接口输出,由于第一转发桥采用的报文转发模式是集中转发模式,第二转发桥采用的报文转发模式是本地转发模式,并且两个转发桥的地址表是独立设置的,在第一转发桥上转发报文时,无法查找到第二转发桥上的地址表,因此,对属于第一转发桥的第一接口接收到的报文进行转发时,不会出现错误地采用本地转发模式转发报文的情况,相应地,对属于第二转发桥的第二接口接收到的报文进行转发时,也不会出现错误地采用集中转发模式转发报文的情况,有效地保证了报文转发的正确性。
[0085]进一步地,该AP还包括虚拟接口,所述虚拟接口为所述第一转发桥11和所述第二转发桥12之间的接口,由于虚拟接口不是物理接口,因此在图4中用虚线表示。
[0086]所述第一转发桥11还用于,当与所述第一报文的目的地址对应的出接口为所述虚拟接口时,将所述第一报文通过所述虚拟接口发送至所述第四接口 16,以通过所述第四接口 16将所述第一报文发送至所述第一报文的目的地址对应的本地设备。[0087]进一步地,所述第一转发桥11还用于,当在所述第一地址表中未查询到与所述第一报文的目的地址对应的出接口时,根据所述第一报文的目的地址,通过所述虚拟接口向所述第二转发桥12上的各接口进行广播寻址,以使所述第二转发桥12上的各接口判断所述第一报文的目的地址是否为所连接的设备的地址;当通过所述虚拟接口,接收到所述第一报文的目的地址对应的本地设备所返回的响应消息之后,将所述虚拟接口作为所述第一报文的目的地址对应的出接口更新所述第一地址表。
[0088]本发明实施例提供的接入点AP,在从第一接口接收到第一报文之后,第一转发桥在第一地址表中查询出接口,当出接口为第一转发桥与第二转发桥之间的虚拟接口时,将第一报文通过所述虚拟接口发送给第二转发桥上的第四接口,从而使得第一转发桥转发报文时,不仅可以采用集中转发模式,还可以根据需要采用本地转发模式对报文进行转发,有效地提高了报文转发的效率。
[0089]具体的,本发明实施例中接入点AP进行报文转发的方法,可以参见上述对应的方法实施例中所述的操作步骤,此处不再赘述。
[0090]图5为本发明实施例提供的另一接入点AP的结构示意图,如图5所示,AP 20包括:
[0091]处理器21、存储器22和总线23,第一接口 24、第二接口 25、第三接口 26和第四接口 27。处理器21、存储器22、第一接口 24、第二接口 25、第三接口 26和第四接口 27之间通过总线23连接并完成相互间的通信。
[0092]处理器21可能为单核或多核中央处理单元(Central Processing Unit, CPU),或者为特定集成电路(Application Specific Integrated Circuit,简称ASIC),或者为被配置成实施本发明实施例的一个或多个集成电路。
[0093]存储器22可以为高速RAM存储器,也可以为非易失性存储器(non-volatilememory),例如至少一个磁盘存储器。
[0094]存储器22用于存放程序221和程序222。具体的,程序221和程序222中可以包括程序代码,所述程序代码包括计算机操作指令。
[0095]处理器21运行程序221,以执行:
[0096]获取第一接口所接收到的第一报文的目的地址,所述第一接口属于所述第一转发桥;
[0097]在第一地址表中查询与所述第一报文的目的地址对应的出接口,所述第一地址表与所述第一转发桥对应;
[0098]若与所述第一报文的目的地址对应的出接口为隧道接口,则根据隧道协议对所述第一报文进行封装,并将封装后的第一报文通过第三接口发送至所述第一报文的目的地址对应的网络设备,其中,所述第三接口属于所述第二转发桥,所述第三接口用于连接网络设备;
[0099]若与所述第一报文的目的地址对应的出接口为所述第一转发桥与所述第二转发桥之间的虚拟接口,则将所述第一报文通过所述虚拟接口发送至所述第四接口,以通过所述第四接口将所述第一报文发送至所述第一报文的目的地址对应的本地设备;
[0100]若在所述第一地址表中未查询到与所述第一报文的目的地址对应的出接口,则根据所述第一报文的目的地址,通过所述虚拟接口向所述第二转发桥上的各接口进行广播寻址,以使所述第二转发桥上的各接口判断所述第一报文的目的地址是否为所连接的设备的地址;
[0101]在通过所述虚拟接口,接收到所述第一报文的目的地址对应的本地设备所返回的响应消息之后,将所述虚拟接口作为所述第一报文的目的地址对应的出接口更新所述第一地址表。
[0102]存储器22还用于保存第一地址表。
[0103]处理器21运行所述程序221,可以实现本发明图1至图4所示任一实施例中的第
一转发桥。
[0104]处理器21运行程序222,以执行:
[0105]获取所述第二接口所接收到的第二报文的目的地址,所述第二接口属于第二转发桥;
[0106]在第二地址表中查询与所述第二报文的目的地址对应的出接口,所述第二地址表与所述第二转发桥对应;
[0107]若与所述第二报文的目的地址对应的出接口为所述第三接口,则将所述第二报文通过所述第三接口发送至所述第二报文的目的地址对应的网络设备;
[0108]或者,若与所述第二报文的目的地址对应的出接口为第四接口,则将所述第二报文通过所述第四接口发送至所述第二报文的目的地址对应的本地设备,其中,所述第四接口属于所述第二转发桥,所述第四接口用于连接本地设备。
[0109]存储器22还用于保存第二地址表。
[0110]处理器21运行所述程序222,可以实现本发明图1至图4所示任一实施例中的第
二转发桥。
[0111]图6为本发明实施例提供的报文处理系统的结构示意图,如图6所示,该报文处理系统包括图4至图5中任一实施例所示的AP 30,以及接入点控制器AC 31,所述接入点AP30与所述接入点控制器AC 31通过所述接入点AP 30的第三接口通信连接。
[0112]所述接入点控制器AC 31,用于从所述接入点AP 30接收封装后的第一报文,对所述封装后的第一报文进行解封装,并将所述第一报文转发至所述第一报文的目的地址对应的设备。
[0113]具体的,所述AC 31根据CAPWAP隧道协议,对所述封装后的第一报文进行解封装,获取到所述第一报文的目的地址,再根据所述第一报文的目的地址转发所述第一报文。
[0114]所述AC 31还用于对所述AP 30进行管理,可以采用与现有技术中类似的实现方式,此处不再赘述。
[0115]具体的,该报文处理系统进行报文转发的方法,可以参见上述对应的方法实施例中所述的操作步骤,此处不再赘述。
[0116]本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:R0M、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
[0117]最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
【权利要求】
1.一种报文转发方法,其特征在于,应用于包括第一转发桥和第二转发桥的接入点设备,所述报文转发方法包括: 获取第一接口所接收到的第一报文的目的地址,所述第一接口属于所述第一转发桥;在第一地址表中查询与所述第一报文的目的地址对应的出接口,所述第一地址表与所述第一转发桥对应; 若与所述第一报文的目的地址对应的出接口为隧道接口,则根据隧道协议对所述第一报文进行封装,并将封装后的第一报文通过第三接口发送至所述第一报文的目的地址对应的网络设备,其中,所述第三接口属于所述第二转发桥,所述第三接口用于连接网络设备。
2.根据权利要求1所述的报文转发方法,其特征在于,所述方法还包括: 获取所述第二接口所接收到的第二报文的目的地址,所述第二接口属于第二转发桥;在第二地址表中查询与所述第二报文的目的地址对应的出接口,所述第二地址表与所述第二转发桥对应; 若与所述第二报文的目的地址对应的出接口为所述第三接口,则将所述第二报文通过所述第三接口发送至所述第二报文的目的地址对应的网络设备; 或者,若与所述第二报文的目的地址对应的出接口为第四接口,则将所述第二报文通过所述第四接口发送至所述第二报文的目的地址对应的本地设备,其中,所述第四接口属于所述第二转发桥,所述第四接口用于连接本地设备。
3.根据权利要求1或2所述的报文转发方法,其特征在于,所述方法还包括: 若与所述第一报文的目的地址对应的出接口为所述第一转发桥与所述第二转发桥之间的虚拟接口,则将所述第一报文通过所述虚拟接口发送至所述第四接口,以通过所述第四接口将所述第一报文发送至所述第一报文的目的地址对应的本地设备。
4.根据权利要求3所述的报文转发方法,其特征在于,所述方法还包括: 若在所述第一地址表中未查询到与所述第一报文的目的地址对应的出接口,则根据所述第一报文的目的地址,通过所述虚拟接口向所述第二转发桥上的各接口进行广播寻址,以使所述第二转发桥上的各接口判断所述第一报文的目的地址是否为所连接的设备的地址; 在通过所述虚拟接口,接收到所述第一报文的目的地址对应的本地设备所返回的响应消息之后,将所述虚拟接口作为所述第一报文的目的地址对应的出接口更新所述第一地址表。
5.一种接入点设备,其特征在于,包括第一转发桥和第二转发桥,以及第一接口、第二接口、第三接口和第四接口;其中,所述第一接口属于所述第一转发桥,所述第二接口、第三接口和第四接口属于所述第二转发桥,所述第三接口用于连接网络设备,所述第四接口用于连接本地设备; 所述第一转发桥,用于获取所述第一接口所接收到的第一报文的目的地址;在第一地址表中查询与所述第一报文的目的地址对应的出接口,所述第一地址表与所述第一转发桥对应;当与所述第一报文的目的地址对应的出接口为隧道接口时,根据隧道协议对所述第一报文进行封装,并将封装后的第一报文通过第三接口发送至所述第一报文的目的地址对应的网络设备; 所述第二转发桥,用于获取所述第二接口所接收到的第二报文的目的地址;在第二地址表中查询与所述第二报文的目的地址对应的出接口,所述第二地址表与所述第二转发桥对应;当与所述第二报文的目的地址对应的出接口为所述第三接口,则将所述第二报文通过所述第三接口发送至所述第二报文的目的地址对应的网络设备;或者,当与所述第二报文的目的地址对应的出接口为所述第四接口,则将所述第二报文通过所述第四接口发送至所述第二报文的目的地址对应的本地设备。
6.根据权利要求5所述的接入点设备,其特征在于,所述接入点设备还包括虚拟接口,所述虚拟接口为所述第一转发桥和所述第二转发桥之间的接口。
7.根据权利要求6所述的接入点设备,其特征在于,所述第一转发桥还用于: 当与所述第一报文的目的地址对应的出接口为所述虚拟接口时,将所述第一报文通过所述虚拟接口发送至所述第四接口,以通过所述第四接口将所述第一报文发送至所述第一报文的目的地址对应的本地设备。
8.根据权利要求6或7所述的接入点设备,其特征在于,所述第一转发桥还用于: 当在所述第一地址表中未查询到与所述第一报文的目的地址对应的出接口时,根据所述第一报文的目的地址,通过所述虚拟接口向所述第二转发桥上的各接口进行广播寻址,以使所述第二转发桥上的各接口判断所述第一报文的目的地址是否为所连接的设备的地址;当通过所述虚拟接口,接收到所述第一报文的目的地址对应的本地设备所返回的响应消息之后,将所述虚拟接口作为所述第一报文的目的地址对应的出接口更新所述第一地址表。
9.一种报文处理系统,其特征在于,包括如权利要求5-8中任一所述的接入点设备以及接入点控制器,所述接入点设备与所述接入点控制器通过所述接入点设备的第三接口通信连接; 所述接入点控制器,用 于从所述接入点设备接收封装后的第一报文,所述第一报文中携带有目的地址;对所述封装后的第一报文进行解封装,并将所述第一报文转发至所述第一报文的目的地址对应的设备。
【文档编号】H04L12/741GK103812775SQ201210452678
【公开日】2014年5月21日 申请日期:2012年11月13日 优先权日:2012年11月13日
【发明者】宋德翔, 赵广 申请人:华为技术有限公司