CN105391634B - 一种报文处理方法、装置及交换机 - Google Patents

一种报文处理方法、装置及交换机 Download PDF

Info

Publication number
CN105391634B
CN105391634B CN201510894557.9A CN201510894557A CN105391634B CN 105391634 B CN105391634 B CN 105391634B CN 201510894557 A CN201510894557 A CN 201510894557A CN 105391634 B CN105391634 B CN 105391634B
Authority
CN
China
Prior art keywords
data message
user
address
layers
sent
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.)
Active
Application number
CN201510894557.9A
Other languages
English (en)
Other versions
CN105391634A (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.)
Ruijie Networks Co Ltd
Original Assignee
Fujian Star Net Communication 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 Fujian Star Net Communication Co Ltd filed Critical Fujian Star Net Communication Co Ltd
Priority to CN201510894557.9A priority Critical patent/CN105391634B/zh
Publication of CN105391634A publication Critical patent/CN105391634A/zh
Application granted granted Critical
Publication of CN105391634B publication Critical patent/CN105391634B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明提供一种报文处理方法、装置及交换机,该方法包括:三层认证交换机的交换芯片通过第一端口接收三层核心设备转发的来自用户的数据报文,并从所述数据报文中获取源网络协议IP地址;为所述数据报文分配预设虚拟路由转发标识VRFID;根据所述源IP地址以及所述预设VRFID进行路由表查询,判断所述用户是否为已认证用户;如果是,将所述数据报文发送给所述出口设备,其中,进行路由表查找后,所述数据报文的目的MAC地址和源MAC地址不变;如果否,将所述数报文发送给所述三层认证交换机的中央处理器CPU,以使CPU将所述数据报文发送给认证服务器进行认证处理。本发明可提高对报文的处理速度,并且减轻了认证服务器的负荷。

Description

一种报文处理方法、装置及交换机
技术领域
本发明涉及网络技术领域,尤其涉及一种报文处理方法、装置及交换机。
背景技术
目前对用户进行三层认证的网络拓扑图如图1所示,在出口设备和三层核心认证设备之间设置一个出口认证服务器,三层核心设备负责将来自用户的访问外部网络数据报文转发给出口认证服务器,出口认证服务器根据该用户的访问外部网络的数据报文判断该用户是否为已认证用户,如果是已认证用户,则将该数据报文转发至出口设备允许该用户访问外部网络,否则,出口认证服务器对该用户的访问外部网络的数据报文进行认证后,允许该用户访问外部网络。
但是,上述认证服务器是利用其中的CPU对来自用户的数据报文进行软件层面的处理,不能走芯片级的硬件处理,这就会导致处理报文的性能差的问题,并且认证服务器既要进行认证处理又要进行转发处理,负荷较大。
发明内容
本发明提供一种报文处理方法、装置及交换机,用于解决现有的报文只能在认证服务器中进行软件层面的处理,不能走芯片级的硬件处理,而导致的处理报文的性能差的问题以及认证服务器负荷较大的问题。
一种报文处理方法,包括:
三层认证交换机的交换芯片通过第一端口接收三层核心设备转发的来自用户的数据报文,并从所述数据报文中获取源网络协议IP地址;
为所述数据报文分配预设虚拟路由转发标识VRFID;
根据所述源IP地址以及所述预设VRFID进行路由表查询,判断所述用户是否为已认证用户;
如果是,将所述数据报文发送给所述出口设备,其中,进行路由表查找后,所述数据报文的目的MAC地址和源MAC地址不变;
如果否,将所述数报文发送给所述三层认证交换机的中央处理器CPU,以使CPU将所述数据报文发送给认证服务器进行认证处理。
所述方法,根据所述源IP地址以及所述预设VRFID进行路由表查询之前,还包括:
将所述数据报文的目的MAC地址确定为所述三层认证交换机的MAC地址。
本发明实施例可以保证针对通过第一端口接收的数据报文进行路由表查找。
所述方法中,根据所述源IP地址以及所述预设VRFID进行路由查找,判断所述用户是否为已认证用户,具体包括:
判断所述源IP地址以及所述预设VRFID是否属于路由表中的同一路由表项;
如果是,确定所述用户为已认证用户;
如果否,确定所述用户为未认证用户。
本发明实施例,通过查询路由表判断用户是否已认证。
所述方法中,将所述数据报文发送给所述出口设备,具体包括:
将所述数据报文在访问控制列表ACL中进行匹配,根据匹配结果将所述数据报文发送给所述出口设备,所述ACL表中预先设置了将预设classid值对应的数据报文发送给出口设备的表项,所述数据报文包括预设classid值的标签。
本发明实施例,通过匹配ACL表触发将数据报文发送给出口设备的操作。
所述方法中,将所述数据报文发送给所述三层认证交换机的中央处理器CPU,具体包括:
将所述数据报文在ACL表中进行匹配,根据匹配结果将所述数据报文发送给所述三层交换机的CPU,所述ACL表中预先设置了将目的端口为第二端口的传输控制协议TCP报文发送给所述三层交换机的CPU的表项。
本发明实施例,通过将数据报文匹配ACL表,将目的端口为第二端口的传输控制协议TCP报文发送给CPU。
所述方法,还包括:
确定接收到所述CPU对所述数据报文认证通过的消息时,在所述路由表中添加与所述源IP地址以及所述VRFID唯一匹配的路由表项。
本发明实施例,在CPU对未认证用户进行认证通过时,将认证通过的消息通知给交换芯片,交换芯片将该认证通过用户的数据报文的源IP地址以及预设VRFID生成一个唯一匹配的路由表项,待再次接收到该认证通过的用户发出的数据报文时,进行路由表查询,根据查询结果将该用户的数据报文转发给出口设备。
所述方法中,所述三层认证交换机的交换芯片通过硬件Bypass设备接收来自所述三层核心设备的数据报文,并且通过所述硬件Bypass设备将数据报文发送给所述出口设备,所述硬件Bypass设备分别与所述三层核心设备以及所述出口设备连接。
本发明实施例在出口设备和三层核心设备之间添加硬件Bypass设备,在三层认证交换机故障时,可以保证来自用户的数据报文能够发送给出口设备,从而达到不影响用户上网的目的。
所述方法,还包括:
针对每个已认证用户,将该已认证用户的上行流量和下行流量引流到同一张计费卡中,以使该计费卡对该已认证用户进行计费。
本优选实施例,将同一用户产生的上行流量和下行流量引流到同一张计费卡中计费,计费卡在统计该用户的流量时更加简便快捷。
本发明还提供一种报文处理装置,包括:
接收单元,用于通过第一端口接收三层核心设备转发的来自用户的数据报文,并从所述数据报文中获取源网络协议IP地址;
分配单元,用于为所述数据报文分配预设虚拟路由转发标识VRFID;
判断单元,用于根据所述源IP地址以及所述预设VRFID进行路由表查询,判断所述用户是否为已认证用户;
第一发送单元,用于在所述用户为已认证用户时,将所述数据报文发送给所述出口设备,其中,进行路由表查找后,所述数据报文的目的MAC地址和源MAC地址不变;
第二发送单元,用于在所述用户为未认证用户时,将所述数报文发送给三层认证交换机的中央处理器CPU,以使CPU将所述数据报文发送给认证服务器进行认证处理。
所述装置,还包括:
确定单元,用于在所述判断单元根据所述源IP地址以及所述预设VRFID进行路由表查询之前,将所述数据报文的目的MAC地址确定为三层认证交换机的MAC地址。
所述装置中,所述判断单元具体用于:
判断所述源IP地址以及所述预设VRFID是否属于路由表中的同一路由表项;
如果是,确定所述用户为已认证用户;
如果否,确定所述用户为未认证用户。
所述装置中,所述第一发送单元具体用于:
将所述数据报文在访问控制列表ACL中进行匹配,根据匹配结果将所述数据报文发送给所述出口设备,所述ACL表中预先设置了将预设classid值对应的数据报文发送给出口设备的表项,所述数据报文包括预设classid值的标签。
所述装置中,所述第二发送单元具体具体用于:
将所述数据报文在ACL表中进行匹配,根据匹配结果将所述数据报文发送给所述三层交换机的CPU,所述ACL表中预先设置了将目的端口为第二端口的传输控制协议TCP报文发送给所述三层交换机的CPU的表项。
所述装置,还包括:
添加单元,用于确定接收到所述CPU对所述数据报文认证通过的消息时,在所述路由表中添加与所述源IP地址以及所述VRFID唯一匹配的路由表项。
所述装置通过硬件Bypass设备接收来自所述三层核心设备的数据报文,并且通过所述硬件Bypass设备将数据报文发送给所述出口设备,所述硬件Bypass设备分别与所述三层核心设备以及所述出口设备连接。
所述装置,还包括:
流量引流单元,用于针对每个已认证用户,将该已认证用户的上行流量和下行流量引流到同一张计费卡中,以使该计费卡对该已认证用户进行计费。
本发明还提供一种三层认证交换机,该三层认证交换机包括上述任一所述的装置。
利用本发明实施例提供的报文处理方法、装置及交换机,具有以下有益效果:通过在出口设备和三层核心设备间设置一三层认证交换机,并利用该交换机中的交换机芯片实现在硬件层面的对报文进行处理并且该三层认证交换机负责转发数据报文,从而在一定程度上减轻了认证服务器的负荷,提高了报文处理速度,并且基于硬件层面对报文进行处理的方式相比于在软件层面对报文进行处理的方式更加快速、可靠、稳定。此外,在确定发出数据报文的用户为已认证用户时,不修改该数据报文的目的MAC地址和源MAC地址,从而实现了数据报文的二层转发。
附图说明
图1为现有的三层认证网络拓扑示意图;
图2为本发明实施例提供的报文处理方法流程图;
图3为本发明实施例提供的报文处理方法应用场景的网络拓扑示意图;
图4为本发明实施例提供的判断用户是否为已认证用户的方法流程图;
图5为本发明实施例提供的在图3的基础上添加硬件Bypass设备的网络拓扑示意图;
图6为本发明实施例提供的流量引流示意图;
图7为本发明实施例提供的报文处理装置示意图之一;
图8为本发明实施例提供的报文处理装置示意图之二;
图9为本发明实施例提供的报文处理装置示意图之三;
图10为本发明实施例提供的报文处理装置示意图之四。
具体实施方式
下面结合附图和实施例对本发明提供的报文处理方法、装置及交换机进行更详细地说明。
本发明实施例提供一种报文处理方法,如图2所示,包括:
步骤101,三层认证交换机的交换芯片通过第一端口接收三层核心设备转发的来自用户的数据报文,并从所述数据报文中获取源网络协议IP地址。
具体的,来自用户的数据报文中携带源IP(Internet Protocol,网络协议)地址,交换机芯片通过解析该报文获取该报文中携带的源IP地址。
步骤102,为所述数据报文分配预设虚拟路由转发标识VRFID。
具体的,为通过第一端口接收的数据报文分配预设VRFID,通过其它端口接收的报文的VRFID为默认值或者不分配VRFID。VRF(Virtual Routing Forwarding,虚拟路由转发)用于将路由表划分为不同的实例,每个实例对应一个虚拟路由转发标识VRFID(VirtualRouting Forwarding identification,虚拟路由转发标识),本发明实施例设定从第一端口接收的数据报文被分配预设VRFID,从第一端口之外的端口接收的数据报文不被分配VRFID,或者被分配的VRFID为默认值。
步骤103,根据所述源IP地址以及预设VRFID进行路由表查询,判断所述用户是否为已认证用户,如果否,执行步骤104,如果是,执行步骤105。
具体的,路由表的各个路由表项包括源IP地址和VRFID,根据数据报文的源IP地址以及预设VRFID,对该数据报文进行路由表查询(查找),根据查找结果确定发送该数据报文的用户是已认证用户还是未认证用户。
其中,为了保证通过第一端口接收的数据报文都能触发路由表查询,优选地,根据所述源IP地址以及所述预设VRFID进行路由表查询之前,将所述数据报文的目的MAC(MediaAccess Control,媒体访问控制)地址确定为所述三层认证交换机的MAC地址,即三层认证交换机的交换芯片根据数据报文的目的MAC地址将自身的MAC地址更改为该数据报文的目的MAC地址,从而保证通过第一端口接收的数据报文都能触发路由表查询。进一步优选地,第一端口为认证端口,通过第一端口接收的数据报文均为单播报文,交换机芯片将这些单播报文的目的MAC地址作为该三层认证交换机的MAC地址,从而针对来自认证端口的各个数据报文均能进行路由表查询,比如,当通过第一端口接收的来自数据报文的目的MAC地址为出口设备的MAC地址,则,优选地,三层认证交换机芯片将出口设备的MAC地址作为本机MAC地址,从而触发路由表查询。优选地,出口设备发送的报文的目的MAC地址为三层核心设备的MAC地址。
步骤104,将所述数据报文发送给所述三层认证交换机的中央处理器CPU,以使CPU将所述数据报文发送给认证服务器进行认证处理。
具体的,针对来自未认证用户的数据报文,三层认证交换机的交换芯片将该数据报文发送给CPU(中央处理器,Central Processing Unit),CPU将所述数据报文发送给认证服务器进行认证处理,其中,三层认证交换机的CPU与认证服务器交互完成对该用户的认证,当认证服务器对数据报文的认证处理完成时,会将认证结果反馈给CPU;认证服务器对数据报文认证通过时,将认证通过的消息反馈给CPU,认证服务器对数据报文认证不通过时,将认证未通过的消息反馈给CPU。
步骤105,将所述数据报文发送给所述出口设备,其中,进行路由表查找后,所述数据报文的目的MAC地址和源MAC地址不变。
具体的,针对来自已认证用户的数据报文,三层认证交换机的交换芯片直接将该数据报文发送给出口设备,从而允许已认证用户上网。该步骤105中,确定用户为已认证用户时,则对该已认证用户发出的数据报文进行路由表查询后,不修改该已认证用户发出的数据报文的目的MAC地址和源MAC地址,从而实现二层数据报文的转发,即以二层方式将该数据报文发送给出口设备,此时三层认证交换机相当于一个透明的二层设备。
本发明实施例中的三层认证交换机包括交换芯片和CPU,交换芯片处理来自用户的数据报文,并根据数据报文的源IP地址和预设VRFID进行路由查询,从而判断发出该数据报文的用户是已认证用户还是未认证用户,并根据判断结果将数据报文转发给相应的对象,从而实现了在硬件芯片上对报文进行处理。
本发明实施例提供的报文处理方法的应用网络拓扑图如图3所示,在出口设备和三层核心设备间设置一三层认证交换机,其中,交换芯片分别与三层核心设备、CPU以及出口设备连接,CPU与认证服务器连接。三层核心设备访问外网的下一跳地址为出口设备的地址,出口设备访问内网的下一跳地址为三层核心设备的地址。三层认证交换机负责数据报文的转发,而认证服务器负责数据报文的认证,从而在一定程度长减轻了认证服务器的负荷。并且,进行路由表查找后,所述数据报文的目的MAC地址和源MAC地址不变,此时三层认证交换机在网络拓扑中相当于一个透明的二层设备,该透明的二层设备可称为:三层透明认证交换机。
本发明实施例利用交换机中的交换机芯片实现硬件层面的报文处理,从而在一定程度上提高了报文处理速度,并且基于硬件层面对报文进行处理的方式相比于基于软件层面对报文进行处理的方式更加可靠、稳定;三层认证交换机负责数据报文的转发,而认证服务器负责数据报文的认证,从而在一定程度上减轻了认证服务器的负荷。此外,本发明实施例在确定发出数据报文的用户为已认证用户时,不修改该数据报文的目的MAC地址和源MAC地址,从而针对认证端口,在二层拓扑场景下命中三层路由表查询,从而实现了数据报文的二层转发。
具体的,步骤103根据所述源IP地址以及所述VRFID进行路由查询,判断所述用户是否为已认证用户,如图4所示,具体包括:
步骤201,判断所述源IP地址以及所述预设VRFID是否属于路由表中的同一路由表项,如果是,执行步骤202,否则,执行步骤203。
步骤202,确定所述用户为已认证用户。
步骤203,确定所述用户为未认证用户。
具体的,路由表的任一路由表项包括IP地址以及VRFID,确定在该路由表的同一路由表项中查找到数据报文的源IP地址以及预设VRFID时,确定发出该数据报文的用户为已认证用户;确定在该路由表的同一路由表项中仅查找到数据报文的源IP地址或者仅查找到预设VRFID或者数据报文的源IP地址和预设VRFID均未查找到时,确定发出该数据报文的用户为未认证用户。
优选地,确定在该路由表的同一路由表项中查找到数据报文的源IP地址以及预设VRFID时,将该查找到的路由表项中的classid值置为预设classid值,该classid值默认为0,并且将该查找到的路由表项中的ACTION置为放弃(drop)。
具体的路由表如表1所示,IP1表示数据报文的源IP地址,VRFID为2时,表示该VRFID为预设VRFID,0为VRFID的默认值。
表1
表1中,drop表示不修改数据报文的源MAC地址和目的MAC地址,针对不是通过第一端口接收的数据报文(即VRFID为0的数据报文),执行正常的路由查找流程。
本发明实施例通过根据所述源IP地址以及所述VRFID进行路由表查询,从而确定发出该数据报文的用户是否为已认证用户。
优选地,将所述数据报文发送给所述出口设备,具体包括:
将所述数据报文在ACL(Access Control Lists,访问控制列表)中进行匹配,根据匹配结果将所述数据报文发送给所述出口设备;所述ACL表中预先设置了将预设classid值对应的数据报文发送给出口设备的表项,所述数据报文包括预设classid值的标签。
具体的,预先在ACL表中设置将预设classid值对应的数据报文发送给出口设备的表项。确定发出该数据报文的用户为已认证用户时,为该数据报文添加预设classid值的标签,根据该预设classid值匹配ACL表,如果在ACL表中匹配到了将预设classid值对应的数据报文发送给出口设备的表项,则将该数据报文发送给出口设备。其中,预设classid值与默认classid值不同。
优选地,步骤104将所述数据报文发送给所述三层认证交换机的中央处理器CPU,具体包括:
将所述数据报文在访问控制列表ACL中进行匹配,根据匹配结果所述数据报文发送给所述三层交换机的CPU;所述ACL表中预先设置了将目的端口为第二端口的传输控制协议TCP报文发送给所述三层交换机的CPU的表项。其中,针对该未认证用户发出的数据报文进行路由表查询后,将该数据报文添加默认classid值的标签,并针对添加classid标签的数据报文进行ACL表匹配。
具体的,预先在ACL表中设置将目的端口为第二端口的TCP报文发送给CPU的表项,确定发出数据报文的用户为未认证用户时,则根据该数据报文的目的端口以及所属的报文类型,将该数据报文发送到ACL表中进行匹配,确定匹配到将目的端口为第二端口的TCP报文发送给CPU的表项时,将该数据报文发送给CPU,其中报文类型包括TCP报文;确定匹配不到将目的端口为第二端口的TCP报文发送给CPU的表项时,将该数据报文丢弃。优选地,第二端口为80端口,也可以为其它可以触发认证的端口,这里不做限定。
进一步地,确定三层认证交换机的CPU对未认证用户发出的数据报文认证通过时,根据将该认证通过的数据报文的源IP地址以及预设VRFID,生成唯一的路由表项,并添加到路由表中,即,确定接收到所述CPU对所述数据报文认证通过的消息时,在所述路由表中添加与所述源IP地址以及所述VRFID唯一匹配的路由表项。当该用户再次发出数据报文时,交换芯片根据该数据报文的源IP地址和VRFID进行路由表查询,根据查询结果,将该数据报文发送给出口设备,从而使该用户进行上网操作。
具体的,ACL表如表2所示,其中,第一个ACL表项中的classid=2表示预设classid值,第二个ACL表项中的TCP.DPORT=80表示目的端口为80的TCP报文。第三个ACL表项中的OTHERS表示该数据报文没有在第一个ACL表项或第二个ACL表项匹配成功时,丢弃该数据报文。将数据报文进行路由表查询后,如果在路由表中查询到匹配的路由表项则该数据报文携带预设classid值进行ACL表匹配;如果在路由表中未查询到匹配的路由表项则该数据报文携带默认classid值进行ACL表匹配。
表2
MATCH ACTION
classid=2 发送给出口设备
TCP.DPORT=80 发送给CPU
OTHERS 丢弃
优选地,所述三层认证交换机的交换芯片通过硬件Bypass(旁路)设备接收来自所述三层核心设备的数据报文,并且通过所述硬件Bypass设备将数据报文发送给所述出口设备,所述硬件Bypass设备分别与所述三层核心设备以及所述出口设备连接。三层认证交换机的交换芯片通过硬件Bypass设备接收三层核心设备转发的来自用户的数据报文,待交换芯片利用图1所示的实施例对数据报文处理完成后,通过硬件Bypass设备将数据报文转发给出口设备。
具体的,图5所示的网络拓扑图为在图3所示的网络拓扑中加入硬件Bypass设备后的网络拓扑图,本发明实施例的硬件Bypass设备在处于非Bypass状态时,由三层核心设备转发的来自用户的数据报文经过三层认证交换机的交换芯片处理,当硬件Bypass设备处于Bypass状态时,由三层核心设备转发的来自用户的数据报文不经过三层交换机,直接发往出口设备。
本发明实施例的硬件Bypass设备上的控制线与三层认证交换机连接,三层认证交换机通过控制控制线的电压可对硬件Bypass设备进行控制,低电频时硬件Bypass设备处于Bypass状态,高电频时硬件Bypass设备处于非Bypass状态。三层认证交换机检测到自身故障时,将硬件Bypass设备置于Bypass状态。
本发明实施例在出口设备和三层核心设备之间添加硬件Bypass设备,在三层认证交换机故障时,可以保证来自用户的数据报文能够发送给出口设备,从而达到不影响用户上网的目的。
优选地,针对每个已认证用户,将该已认证用户的上行流量和下行流量引流到同一张计费卡中,以使该计费卡对该已认证用户进行计费。
具体的,所述三层认证交换机的交换芯片包括多张计费卡,由计费卡对已认证用户进行计费,本发明实施例,针对确定为已认证的用户,将该已认证用户的上行流量和下行流量引流到同一张计费卡中进行计费,即,将已认证用户访问网络时所产生的上行流量和下行流量分配到同一张计费卡上,使得该计费卡根据该已认证用户的上行流量和下行流量对该已认证用户进行计费。
现有技术中,一个已认证用户的上行流量和下行流量会被引流到多张计费卡上进行计费,计费卡需要根据每张计费卡的流量请况统计该已认证用户的流量情况,方案比较烦冗,本发明实施例,将同一用户产生的上行流量和下行流量引流到同一张计费卡中计费,计费卡在统计该用户的流量时更加简便快捷。
进一步优选地,将已认证用户均衡分配到多张计费卡中,以避免多张计费卡负载不均衡的问题。具体的均衡方式如下:
预先将多张计费卡中的第一物理端口聚合为一个虚拟聚合口AP1;预先将多张计费卡中的第二物理端口聚合为一个虚拟聚合口AP2;其中AP1用于引流已认证用户的上行流量,AP2用于引流已认证用户的下行流量;确定引流已认证用户的流量时,基于已认证用户的IP地址均衡算法,确定将该已认证用户的流量引流到多张计费卡中负载较轻的计费卡上;其中,已认证用户的IP地址对应上行流量来说是源IP地址,对于下行流量来说是目的IP地址,对应同一已认证用户来说,基于目的IP地址的均衡算法和基于源IP地址的均衡算法中的源IP地址和目的IP地址均为该已认证用户的IP地址。此时,只要基于源IP地址均衡算法将已认证用户的上行流量引流到其中一个计费卡中,那么由于源IP地址和目的IP地址相同,那么该已认证用户的下行流量会自动被引流到该计费卡中。
基于源IP地址的均衡算法或基于目的IP地址的均衡算法可以为确定源IP地址或目的IP地址的最后一个数字为奇数时,将该用户的流量引流到奇数对应的计费卡中;确定源IP地址或目的IP地址的最后一个数字为偶数时,将该用户的流量引流到偶数对应的计费卡中,从而实现计费卡的负载均衡。基于源IP地址的均衡算法或基于目的IP地址的均衡算法也可以为其它方式,具体的基于源IP地址的均衡算法或基于目的IP地址的均衡算法为现有技术,这里不做详述。
举例说明,如图6所示,假设计费卡有两张,将计费卡1的第一端口A1和计费卡2的第一端口A2组合成一个AP1,将计费卡1的第二端口B1和计费卡2的第二端口B2组合成一个AP2,将已认证用户的上行流量引流到AP1,将该用户的下行流量引流到AP2,确定该已认证用户的上行流量基于源IP地址均衡算法被引流到计费卡1上时,即该已认证用户的上行流量通过端口A1引流到计费卡1上时,该已认证用户的下行流量基于目的IP地址均衡算法也会被流量到计费卡1上,从而实现了将同一已认证用户的上行流量和下行流量引流到同一计费卡上进行计费。
基于与本发明实施例提供的报文处理方法同样的发明构思,本发明实施例还提供一种报文处理装置,如图7所示,包括:
接收单元701,用于通过第一端口接收三层核心设备转发的来自用户的数据报文,并从所述数据报文中获取源网络协议IP地址;
分配单元702,用于为所述数据报文分配预设虚拟路由转发标识VRFID;
判断单元703,用于根据所述源IP地址以及所述预设VRFID进行路由表查询,判断所述用户是否为已认证用户;
第一发送单元704,用于在所述用户为已认证用户时,将所述数据报文发送给所述出口设备,其中,进行路由表查找后,所述数据报文的目的MAC地址和源MAC地址不变;
第二发送单元705,用于在所述用户为未认证用户时,将所述数报文发送给三层认证交换机的中央处理器CPU,以使CPU将所述数据报文发送给认证服务器进行认证处理。
具体的,该报文处理装置位于三层认证交换机的交换芯片中。
如图8所示,所述装置,还包括:
确定单元706,用于在所述判断单元根据所述源IP地址以及所述预设VRFID进行路由表查询之前,将所述数据报文的目的MAC地址确定为三层认证交换机的MAC地址。
所述装置中,所述判断单元具体用于:
判断所述源IP地址以及所述预设VRFID是否属于路由表中的同一路由表项;
如果是,确定所述用户为已认证用户;
如果否,确定所述用户为未认证用户。
所述装置中,所述第一发送单元具体用于:
将所述数据报文在访问控制列表ACL中进行匹配,根据匹配结果将所述数据报文发送给所述出口设备,所述ACL表中预先设置了将预设classid值对应的数据报文发送给出口设备的表项,所述数据报文包括预设classid值的标签。
所述装置中,所述第二发送单元具体具体用于:
将所述数据报文在ACL表中进行匹配,根据匹配结果将所述数据报文发送给所述三层交换机的CPU,所述ACL表中预先设置了将目的端口为第二端口的传输控制协议TCP报文发送给所述三层交换机的CPU的表项。
如图9所示,所述装置,还包括:
添加单元707,用于确定接收到所述CPU对所述数据报文认证通过的消息时,在所述路由表中添加与所述源IP地址以及所述VRFID唯一匹配的路由表项。
所述装置通过硬件Bypass设备接收来自所述三层核心设备的数据报文,并且通过所述硬件Bypass设备将数据报文发送给所述出口设备,所述硬件Bypass设备分别与所述三层核心设备以及所述出口设备连接。
如图10所示,所述装置,还包括:
流量引流单元708,用于针对每个已认证用户,将该已认证用户的上行流量和下行流量引流到同一张计费卡中,以使该计费卡对该已认证用户进行计费。
本发明还提供一种三层认证交换机,该三层认证交换机包括上述任一所述的装置。
利用本发明实施例提供的报文处理方法、装置及交换机,具有以下有益效果:通过在出口设备和三层核心设备间设置一三层认证交换机,并利用该交换机中的交换机芯片实现在硬件层面对报文进行处理并且该三层认证交换机负责转发数据报文,从而在一定程度上减轻了认证服务器的负荷,提高了报文处理速度,并且在硬件层面对报文进行处理的方式相比于在软件层面对报文进行处理的方式更加快速、可靠、稳定。此外,在确定发出数据报文的用户为已认证用户时,不修改该数据报文的目的MAC地址和源MAC地址,从而实现了数据报文的二层转发。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (17)

1.一种报文处理方法,其特征在于,包括:
三层认证交换机的交换芯片通过第一端口接收三层核心设备转发的来自用户的数据报文,并从所述数据报文中获取源网络协议IP地址;
为所述数据报文分配预设虚拟路由转发标识VRFID;
根据所述源IP地址以及所述预设VRFID进行路由表查询,判断所述用户是否为已认证用户;
如果是,将所述数据报文发送给出口设备,其中,进行路由表查找后,所述数据报文的目的MAC地址和源MAC地址不变;
如果否,将所述数据报文发送给所述三层认证交换机的中央处理器CPU,以使CPU将所述数据报文发送给认证服务器进行认证处理。
2.如权利要求1所述的方法,其特征在于,根据所述源IP地址以及所述预设VRFID进行路由表查询之前,还包括:
将所述数据报文的目的MAC地址确定为所述三层认证交换机的MAC地址。
3.如权利要求1或2所述的方法,其特征在于,根据所述源IP地址以及所述预设VRFID进行路由查找,判断所述用户是否为已认证用户,具体包括:
判断所述源IP地址以及所述预设VRFID是否属于路由表中的同一路由表项;
如果是,确定所述用户为已认证用户;
如果否,确定所述用户为未认证用户。
4.如权利要求1或2所述的方法,其特征在于,将所述数据报文发送给所述出口设备,具体包括:
将所述数据报文在访问控制列表ACL中进行匹配,根据匹配结果将所述数据报文发送给所述出口设备,所述ACL表中预先设置了将预设classid值对应的数据报文发送给出口设备的表项,所述数据报文包括预设classid值的标签。
5.如权利要求1或2所述的方法,其特征在于,将所述数据报文发送给所述三层认证交换机的中央处理器CPU,具体包括:
将所述数据报文在ACL表中进行匹配,根据匹配结果将所述数据报文发送给所述三层认证交换机的CPU,所述ACL表中预先设置了将目的端口为第二端口的传输控制协议TCP报文发送给所述三层认证交换机的CPU的表项。
6.如权利要求5所述的方法,其特征在于,还包括:
确定接收到所述CPU对所述数据报文认证通过的消息时,在所述路由表中添加与所述源IP地址以及所述VRFID唯一匹配的路由表项。
7.如权利要求1或2所述的方法,其特征在于,所述三层认证交换机的交换芯片通过硬件Bypass设备接收来自所述三层核心设备的数据报文,并且通过所述硬件Bypass设备将数据报文发送给所述出口设备,所述硬件Bypass设备分别与所述三层核心设备以及所述出口设备连接。
8.如权利要求1或2所述的方法,其特征在于,还包括:
针对每个已认证用户,将该已认证用户的上行流量和下行流量引流到同一张计费卡中,以使该计费卡对该已认证用户进行计费。
9.一种报文处理装置,其特征在于,包括:
接收单元,用于通过第一端口接收三层核心设备转发的来自用户的数据报文,并从所述数据报文中获取源网络协议IP地址;
分配单元,用于为所述数据报文分配预设虚拟路由转发标识VRFID;
判断单元,用于根据所述源IP地址以及所述预设VRFID进行路由表查询,判断所述用户是否为已认证用户;
第一发送单元,用于在所述用户为已认证用户时,将所述数据报文发送给出口设备,其中,进行路由表查找后,所述数据报文的目的MAC地址和源MAC地址不变;
第二发送单元,用于在所述用户为未认证用户时,将所述数据报文发送给三层认证交换机的中央处理器CPU,以使CPU将所述数据报文发送给认证服务器进行认证处理。
10.如权利要求9所述的装置,其特征在于,还包括:
确定单元,用于在所述判断单元根据所述源IP地址以及所述预设VRFID进行路由表查询之前,将所述数据报文的目的MAC地址确定为所述三层认证交换机的MAC地址。
11.如权利要求9或10所述的装置,其特征在于,所述判断单元具体用于:
判断所述源IP地址以及所述预设VRFID是否属于路由表中的同一路由表项;
如果是,确定所述用户为已认证用户;
如果否,确定所述用户为未认证用户。
12.如权利要求9或10所述的装置,其特征在于,所述第一发送单元具体用于:
将所述数据报文在访问控制列表ACL中进行匹配,根据匹配结果将所述数据报文发送给所述出口设备,所述ACL表中预先设置了将预设classid值对应的数据报文发送给出口设备的表项,所述数据报文包括预设classid值的标签。
13.如权利要求9或10所述的装置,其特征在于,所述第二发送单元具体具体用于:
将所述数据报文在ACL表中进行匹配,根据匹配结果将所述数据报文发送给所述三层认证交换机的CPU,所述ACL表中预先设置了将目的端口为第二端口的传输控制协议TCP报文发送给所述三层认证交换机的CPU的表项。
14.如权利要求13所述的装置,其特征在于,还包括:
添加单元,用于确定接收到所述CPU对所述数据报文认证通过的消息时,在所述路由表中添加与所述源IP地址以及所述VRFID唯一匹配的路由表项。
15.如权利要求9或10所述的装置,其特征在于,所述装置通过硬件Bypass设备接收来自所述三层核心设备的数据报文,并且通过所述硬件Bypass设备将数据报文发送给所述出口设备,所述硬件Bypass设备分别与所述三层核心设备以及所述出口设备连接。
16.如权利要求9或10所述的装置,其特征在于,还包括:
流量引流单元,用于针对每个已认证用户,将该已认证用户的上行流量和下行流量引流到同一张计费卡中,以使该计费卡对该已认证用户进行计费。
17.一种三层认证交换机,其特征在于,所述三层认证交换机包括权利要求9-16任一所述的装置。
CN201510894557.9A 2015-12-08 2015-12-08 一种报文处理方法、装置及交换机 Active CN105391634B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510894557.9A CN105391634B (zh) 2015-12-08 2015-12-08 一种报文处理方法、装置及交换机

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510894557.9A CN105391634B (zh) 2015-12-08 2015-12-08 一种报文处理方法、装置及交换机

Publications (2)

Publication Number Publication Date
CN105391634A CN105391634A (zh) 2016-03-09
CN105391634B true CN105391634B (zh) 2018-11-09

Family

ID=55423482

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510894557.9A Active CN105391634B (zh) 2015-12-08 2015-12-08 一种报文处理方法、装置及交换机

Country Status (1)

Country Link
CN (1) CN105391634B (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107948060A (zh) * 2016-10-12 2018-04-20 深圳市中兴微电子技术有限公司 一种新型的路由表建立、以及ip路由查找方法和装置
CN109005119B (zh) * 2018-09-29 2021-02-09 新华三技术有限公司合肥分公司 一种设置mac地址认证下线检测时间的方法及交换机
US11171992B2 (en) * 2019-07-29 2021-11-09 Cisco Technology, Inc. System resource management in self-healing networks
CN113329454B (zh) * 2020-02-29 2023-01-06 华为技术有限公司 发布路由的方法、网元、系统及设备
CN111416815B (zh) * 2020-03-17 2022-06-17 深圳市信锐网科技术有限公司 报文处理方法、电子设备和存储介质
CN114157684B (zh) * 2020-08-18 2024-01-02 华为终端有限公司 一种报文处理的方法、设备以及存储介质
CN112468415A (zh) * 2020-10-21 2021-03-09 浪潮思科网络科技有限公司 一种协议报文处理方法、装置、设备及介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1486025A (zh) * 2003-08-22 2004-03-31 北京港湾网络有限公司 PPPoE二层透传端口用户名绑定检查的方法
CN201479143U (zh) * 2009-09-17 2010-05-19 北京鼎普科技股份有限公司 内网安全管理系统
CN102571603A (zh) * 2012-02-14 2012-07-11 成都欣点科技有限公司 以太网端口控制装置及方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100541846B1 (ko) * 2002-11-27 2006-01-11 한국전자통신연구원 3 단계 테이블로 구성된 아이피 주소 룩업 시스템 및 그방법

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1486025A (zh) * 2003-08-22 2004-03-31 北京港湾网络有限公司 PPPoE二层透传端口用户名绑定检查的方法
CN201479143U (zh) * 2009-09-17 2010-05-19 北京鼎普科技股份有限公司 内网安全管理系统
CN102571603A (zh) * 2012-02-14 2012-07-11 成都欣点科技有限公司 以太网端口控制装置及方法

Also Published As

Publication number Publication date
CN105391634A (zh) 2016-03-09

Similar Documents

Publication Publication Date Title
CN105391634B (zh) 一种报文处理方法、装置及交换机
CN104104718B (zh) 一种基于软件定义网络的用户自主路由定制系统和方法
CN105337857B (zh) 一种基于软件定义网络的多路径传输方法
CN105634956B (zh) 一种报文转发方法、装置和系统
CN104335537B (zh) 用于层2多播多路径传送的系统和方法
CN103348635B (zh) 网络系统、控制单元和最优路由控制方法
CN102112981B (zh) 通信网络中的虚拟机的动态分布
CN103746911B (zh) 一种sdn网络结构及其通信方法
CN107241186A (zh) 应用签名生成和分发
WO2017005223A1 (zh) 一种智能电表的信息共享方法、智能电表及采集路由器
CN106603550B (zh) 一种网络隔离方法及装置
EP2430800A1 (en) A method and apparatus for policy enforcement using a tag
US10411911B2 (en) Network as service service cross-domain orchestration method, orchestration device, and control device
CN104734953B (zh) 基于vlan实现报文二层隔离的方法、装置及交换机
CN106713182A (zh) 一种处理流表的方法及装置
CN101789949B (zh) 一种实现负荷分担的方法和路由设备
CN106878193A (zh) 一种负载分担方法及装置
CN104158739B (zh) 一种ip流量工程管理方法以及装置
CN104618253B (zh) 一种动态变更的传输报文处理方法和装置
CN106817299A (zh) 软件定义网络的表项生成方法和装置以及报文转发方法
WO2017021891A1 (en) Method and system for memory allocation in a software-defined networking (sdn) system
CN104601467A (zh) 一种发送报文的方法和装置
CN102694732A (zh) 一种基于局部虚拟化的虚拟网构建方法和系统
CN101094153A (zh) 在发送站与接收站之间传递数据的方法和设备
CN107948087A (zh) 一种负载均衡的方法及设备

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
CP01 Change in the name or title of a patent holder
CP01 Change in the name or title of a patent holder

Address after: Cangshan District of Fuzhou City, Fujian province 350002 Jinshan Road No. 618 Garden State Industrial Park 19 floor

Patentee after: RUIJIE NETWORKS Co.,Ltd.

Address before: Cangshan District of Fuzhou City, Fujian province 350002 Jinshan Road No. 618 Garden State Industrial Park 19 floor

Patentee before: Beijing Star-Net Ruijie Networks Co.,Ltd.