上线处理方法及装置与流程

文档序号:14847686发布日期:2018-06-30 16:55阅读:365来源:国知局
上线处理方法及装置与流程

本公开涉及网络通信技术领域,尤其涉及一种上线处理方法及装置。



背景技术:

为解决传统BRAS(Broadband Remote Access Server,宽带远程接入服务器)中存在的转发平面和控制平面能力不匹配、无法共享资源以及新业务部署不及时等问题,引入了虚拟化BRAS理念。虚拟化BRAS的思想是分离控制平面和数据平面,即:把用户识别与发起认证请求、身份认证、地址分配与管理和接入控制等控制平面业务单独提取出来由一台单独的设备CP(Controller Plane,控制平面)来完成;用户数据报文转发、流量控制等数据平面业务由另一台单独的设备DP(Data Plane,数据平面)来完成。



技术实现要素:

有鉴于此,本公开提出了一种上线处理方法及装置。

根据本公开的第一方面,提供了一种上线处理方法,应用于控制平面设备,包括:

创建与数据平面设备的物理端口相对应的虚拟接口;

接收所述数据平面设备发送的报文,所述报文携带有所述数据平面设备的连接有用户设备的物理端口的端口标识;

若所述连接有用户设备的物理端口的端口标识与所创建的虚拟接口相对应,则向所述数据平面设备下发用于控制所述用户设备上线的流表项。

根据本公开的第二方面,提供了一种上线处理方法,应用于数据平面设备,包括:

接收控制平面设备发送的默认流表,其中,所述默认流表的匹配项是用户设备发送的上线报文的类型或者用户设置的匹配对象,所述默认流表的动作项是将所述数据平面设备的连接有用户设备的物理端口的端口标识封装入所述上线报文,在所述连接有用户设备的物理端口转发;

接收所述用户设备发送的上线报文;

将所述数据平面设备的连接有用户设备的物理端口的端口标识封装入所述上线报文;

在所述连接有用户设备的物理端口,向所述控制平面设备发送封装后的报文。

根据本公开的第三方面,提供了一种上线处理装置,应用于控制平面设备,包括:

创建模块,用于创建与数据平面设备的物理端口相对应的虚拟接口;

接收模块,用于接收所述数据平面设备发送的报文,所述报文携带有所述数据平面设备的连接有用户设备的物理端口的端口标识;

发送模块,用于若所述连接有用户设备的物理端口的端口标识与所创建的虚拟接口相对应,则向所述数据平面设备下发用于指导所述用户设备上线的流表项。

根据本公开的第四方面,提供了一种上线处理装置,应用于数据平面设备,包括:

流表接收模块,用于接收控制平面设备发送的默认流表,其中,所述默认流表的匹配项是用户设备发送的上线报文的类型或者用户设置的匹配对象,所述默认流表的动作项是将所述数据平面设备的连接有用户设备的物理端口的端口标识封装入所述上线报文,在所述连接有用户设备的物理端口转发;

报文接收模块,用于接收所述用户设备发送的上线报文;

封装模块,用于将所述数据平面设备的连接有用户设备的物理端口的端口标识封装入所述上线报文;

发送模块,用于在所述连接有用户设备的物理端口,向所述控制平面设备发送封装后的报文。

本公开提供的技术方案可以包括以下有益效果:CP根据从DP接收到的报文所携带的物理端口的端口标识是否与CP所创建的虚拟接口相对应,控制是否下发用于指导用户设备上线的流表项,由于CP维护了DP的所有物理端口与所创建的虚拟接口的对应关系,因此,能够实现DP任意端口上线。

在一种实现方式中,本公开提供的技术方案可以包括以下有益效果:相比于现有技术中CP和DP通过OpenFlow通道和VXLAN通道这两个不同的通道进行通信,即通过两个不同的通道实现表项下发和协议报文的控制,根据本公开的实施例,CP和DP仅使用一个通道进行通信,例如OpenFlow通道,由此,无需额外的其它通道,例如VXLAN通道。

根据下面参考附图对示例性实施例的详细说明,本公开的其它特征及方面将变得清楚。

附图说明

包含在说明书中并且构成说明书的一部分的附图与说明书一起示出了本公开的示例性实施例、特征和方面,并且用于解释本公开的原理。

图1是根据一示例性实施例示出的一种上线处理方法的流程图。

图2是根据一示例性实施例示出的一种上线处理方法的流程图。

图3是根据一示例性实施例示出的一种上线处理装置的结构框图。

图4是根据一示例性实施例示出的一种上线处理装置的结构框图。

图5是根据一示例性实施例示出的一种上线处理装置的硬件结构框图。

具体实施方式

以下将参考附图详细说明本公开的各种示例性实施例、特征和方面。附图中相同的附图标记表示功能相同或相似的元件。尽管在附图中示出了实施例的各种方面,但是除非特别指出,不必按比例绘制附图。

在这里专用的词“示例性”意为“用作例子、实施例或说明性”。这里作为“示例性”所说明的任何实施例不必解释为优于或好于其它实施例。

另外,为了更好的说明本公开,在下文的具体实施方式中给出了众多的具体细节。本领域技术人员应当理解,没有某些具体细节,本公开同样可以实施。在一些实例中,对于本领域技术人员熟知的方法、手段、元件和电路未作详细描述,以便于凸显本公开的主旨。

为便于说明,以下首先对本公开涉及的部分概念进行解释说明。

CP和DP之间通过建立OpenFlow和VXLAN(Virtual Extensible LAN,虚拟扩展局域网)两条传输通道来实现表项下发和协议报文的控制。其中,OpenFlow通道作为CP和DP之间的表项下发通道,VXLAN隧道作为CP和DP之间的协议报文通道。

然而,由于CP根据VXLAN隧道接收到的协议报文仅能够获取到该协议报文来自于哪一个VSI(Virtual Switching Instance,虚拟交换实例)网关接口,因此CP仅能将用户流量限制在VSI网关逻辑口,从而无法实现DP任意端口上线。

为此,本公开提出了如下的实施例以解决上述的问题。

图1是根据一示例性实施例示出的一种上线处理方法的流程图,该上线处理方法可以应用于控制平面设备。如图1所示,该上线处理方法可以包括如下步骤。

在步骤S110中,创建与数据平面设备的物理端口相对应的虚拟接口。

本实施例中,CP可以直接获取到DP的所有物理端口的端口标识,因此CP可以创建与获取到的端口标识所标识的物理端口相对应的虚拟接口。

在一种实现方式中,若CP与DP之间的通信通道为OpenFlow通道,则当DP的任一物理端口的状态在激活(UP)状态和宕机(DOWN)状态之间转换时,DP会主动向CP发送通告报文,从而上报自身的物理端口的状态,其中该通告报文携带有状态发生转换的物理端口的端口标识以及该物理端口的当前状态。CP可以通过对DP发送的通告报文进行解析,来获取DP的物理端口的端口标识。

在步骤S130中,接收数据平面设备发送的报文,该报文携带有数据平面设备的连接有用户设备的物理端口的端口标识。

在步骤S150中,若连接有用户设备的物理端口的端口标识与所创建的虚拟接口相对应,则向数据平面设备下发用于指导用户设备上线的流表项。

本实施例中,若连接有用户设备的物理端口的端口标识与所创建的虚拟接口相对应,则CP可以在所创建的虚拟接口下进行用户设备的上线流程中的后续控制流程。

以PPPOE(Point-to-Point Protocol over Ethernet,在以太网上承载PPP协议)用户设备接入为例来说明,在所创建的虚拟接口下进行用户设备的上线流程中的后续控制流程。

CP创建PPPoE会话并进行PPP协商,CP向AAA(Authentication Authorization Accounting,认证、授权、计费)服务器发送认证请求,认证请求消息携带有用户名和密码等信息。CP接收AAA服务器返回的认证结果,其中,如果认证成功,则AAA服务器向CP发送认证接受报文并携带授权信息;如果认证失败,则AAA服务器向CP发送认证拒绝报文。

CP根据从AAA服务器接收到的报文来获取认证和授权结果,如果认证失败,则使用户设备下线;如果认证成功,则CP将PPPoE会话通过OpenFlow通道发送给DP。CP向AAA服务器发送计费开始报文,开始对该用户计费。

因此,在本公开的实施例中,CP根据从DP接收到的报文所携带的物理端口的端口标识是否与CP所创建的虚拟接口相对应,控制是否下发用于指导用户设备上线的流表项。由于CP维护了DP的所有物理端口与所创建的虚拟接口的对应关系,因此,能够实现DP任意端口上线。

另外,相比于现有技术中CP和DP通过OpenFlow通道和VXLAN通道这两个不同的通道进行通信,即通过两个不同的通道实现表项下发和协议报文的控制,根据本公开的实施例,CP和DP仅使用一个通道进行通信,例如OpenFlow通道,由此,无需额外的其它通道,例如VXLAN通道。

在一种实现方式中,上述上线处理方法还可以包括:向数据平面设备发送默认流表,其中,默认流表的匹配项是用户设备发送的上线报文的类型或用户设置的匹配对象,默认流表的动作项是将连接有用户设备的物理端口的端口标识封装入上线报文,在连接有用户设备的物理端口转发。

本实施例中,每命中一条默认流表,DP按照默认流表的动作项对上线报文进行处理,并按照连接有用户设备的物理端口转发处理后的报文。

默认流表可以包括但不限于以下流表:

流表一:当报文是DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)discover(发现)报文时,匹配项是报文类型:DHCP报文,动作项是对DHCP discover报文进行Packet-in操作,并且对其它DHCP报文进行正常转发操作。

流表二:当报文是ND(Neighbor Discovery,邻居发现)RS(Router Solicitation,路由请求)报文时,匹配项是报文类型:NDRS报文,动作项是对ND RS报文进行Packet-in操作,并且对其它ND报文进行正常转发操作。

流表三:对于所有报文,匹配项是用户设置的对应接口/L2VPN(Layer 2Virtual Private Network,二层虚拟专用网)的AC(Access Circuit,接入电路),动作项是在该AC上对所有报文进行Packet-in操作及正常转发操作。

流表四、对于子网报文,匹配项是用户设置的子网网段,动作项是在对应接口上对所有子网报文进行Packet-in操作及正常转发操作。

流表五、对于未知源IP报文,匹配项是用户设置的IP,动作项是对IP报文进行Packet-in操作。

流表六、匹配项是未匹配上述流表一~流表五的报文,动作项是丢弃。

对于上述六种流表,可以是并行匹配,优先级相同,也可以是根据用户需求设置的优先级顺序进行匹配,如按照优先级由大到小的顺序依次去匹配的,流表一的优先级最大,流表六的优先级最小。并且,如果考虑防攻击,可以在流表上引用meter表,对Packet-in的报文进行限速等。

本实施例中,CP还可以向DP发送如下两种流表:

流表I:当报文是与WEB认证服务器交互的报文时,匹配项是报文类型:与WEB认证服务器交互的报文,动作项是对所有与WEB认证服务器交互的报文进行正常转发操作。

流表II:当报文是除了与WEB认证服务器交互的报文以外的其它HTTP/HTTPS报文时,匹配项是报文类型:除了与WEB认证服务器交互的报文以外的其它HTTP/HTTPS报文,动作项是对其它HTTP/HTTPS报文进行Packet-in操作。

流表I和流表II的优先级可以与上述的流表一~流表五的相同或不同,或者按照用户需求进行优先级排列,如高于上述五种流表。

在一种实现方式中,接收的报文还可以携带有数据平面设备的连接有用户设备的物理端口的端口标识与VLAN/VXLAN/端口MAC的对应关系,

相应地,本实施例的上线处理方法还可以包括:

若连接有用户设备的物理端口的端口标识与所创建的虚拟接口相对应,则获取虚拟接口与VLAN/VXLAN/端口MAC的对应关系,向数据平面设备下发用于指导用户设备上线的流表项。

本实施例中,若接收的报文还携带有端口标识与VLAN/VXLAN/端口MAC的对应关系,则CP根据端口标识与VLAN/VXLAN/端口MAC对应关系和端口标识与所创建的虚拟接口的对应关系,获取VLAN/VXLAN/端口MAC与所创建的虚拟接口的对应关系,由此,在解QINQ/VXLAN/MACinMAC封装时,根据所获取的对应关系确定用户设备从该虚拟接口上线。

图2是根据一示例性实施例示出的一种上线处理方法的流程图,该上线处理方法可以应用于数据平面设备。如图2所示,该上线处理方法可以包括如下步骤。

在步骤S220中,接收控制平面设备发送的默认流表,其中,该默认流表的匹配项是用户设备发送的上线报文的类型或用户设置的匹配对象,该默认流表的动作项是将数据平面设备的连接有用户设备的物理端口的端口标识封装入该上线报文,在连接有用户设备的物理端口转发。

在步骤S240中,接收用户设备发送的上线报文。

在步骤S260中,将数据平面设备的连接有用户设备的物理端口的端口标识封装入上线报文。

本实施例中,由于DP接收到上线报文,因此DP查询到命中了默认流表,因而DP执行该默认流表中的动作项,即将数据平面设备的连接有用户设备的物理端口的端口标识封装入上线报文。DP可以通过现有协议报文或者新定义的报文,对上线报文进行封装,以使得封装后的报文携带有DP的连接有用户设备的物理端口的端口标识。例如,DP可以通过OpenFlow协议对上线报文进行Packet-in操作,从而将DP的连接有用户设备的物理端口的端口标识封装入上线报文。

在一种实现方式中,上述协议报文包括但不限于OpenFlow协议报文、VXLAN协议报文、QINQ协议报文、MAC-IN-MAC协议报文。

需要说明的是,本领域技术人员应能够理解,本公开的实施例对上线报文进行封装的封装方式不作具体限制,只要能够使得上线报文携带DP的连接有用户设备的物理端口的端口标识的封装方式均可应用于本公开的实施例。

在步骤S280中,在连接有用户设备的物理端口,向控制平面设备发送封装后的报文。

因此,在本公开的实施例中,DP将自身的连接有用户设备的物理端口的端口标识封装入上线报文,并将封装后的报文发送给CP,这样,CP根据该封装后的报文所携带的物理端口的端口标识是否与CP所创建的虚拟接口相对应,控制是否下发用于指导用户设备上线的流表项,由于CP维护了DP的所有物理端口与所创建的虚拟接口的对应关系,因此,能够实现DP任意端口上线。

在一种实现方式中,默认流表的动作项是将数据平面设备的连接有用户设备的物理端口的端口标识封装入上线报文,包括:

默认流表的动作项是将数据平面设备的连接有用户设备的物理端口的端口标识与VLAN/VXLAN/端口MAC的对应关系封装入上线报文,

将数据平面设备的连接有用户设备的物理端口的端口标识封装入上线报文,包括:

将数据平面设备的连接有用户设备的物理端口的端口标识与VLAN/VXLAN/端口MAC的对应关系封装入上线报文。

本实施例中,默认流表的动作项还可以是将DP的连接有用户设备的物理端口的端口标识与VLAN/VXLAN/端口MAC的对应关系封装入上线报文,相应地,DP将自身的连接有用户设备的物理端口的端口标识与VLAN/VXLAN/端口MAC的对应关系封装入上线报文。由此,CP可以根据接收到的报文获取VLAN/VXLAN/端口MAC与所创建的虚拟接口的对应关系,从而在解QINQ/VXLAN/MACinMAC封装时,根据所获取的对应关系确定用户设备从该虚拟接口上线。

在一种实现方式中,上述上线处理方法还可以包括:

在数据平面设备与控制平面设备之间的通信被中断时,维持已上线的用户设备的上线状态,并且保存已上线的用户设备的计费信息;

在数据平面设备与控制平面设备之间的通信被恢复时,比较所保存的计费信息中的流量与恢复通信时的计费信息中的流量是否一致;

如果所保存的计费信息中的流量与恢复通信时的计费信息中的流量不一致,则向控制平面设备发送恢复通信时的计费信息。

DP定时收集用户流量并通过OpenFlow通道上送CP。CP将流量上送AAA服务器进行计费处理。

因此,在本公开的实施例中,在CP和DP之间的通信被中断时,DP维持已上线的用户设备的上线状态不变并且保存已上线的用户设备的计费信息,在CP和DP之间的通信被恢复时,若所保存的计费信息中的流量与恢复通信时的计费信息中的流量不一致,则DP将恢复通信时的计费信息上传至CP,由此,在CP和DP之间的通信被中断时,不仅可以保证已上线的用户设备的使用,而且还可以优化计费方式。

图3是根据一示例性实施例示出的一种上线处理装置的结构框图,该上线处理装置可以应用于控制平面设备。如图3所示,该上线处理装置300可以包括创建模块310、接收模块330和发送模块350。

创建模块310用于创建与数据平面设备的物理端口相对应的虚拟接口。

接收模块330用于接收数据平面设备发送的报文,报文携带有数据平面设备的连接有用户设备的物理端口的端口标识。

发送模块350与接收模块330和创建模块310连接,用于若连接有用户设备的物理端口的端口标识与所创建的虚拟接口相对应,则向数据平面设备下发用于指导用户设备上线的流表项。

在一种实现方式中,上述上线处理装置还可以包括:

获取模块(未示出),用于获取数据平面设备的物理端口的端口标识,

创建模块310被配置为:创建与端口标识所标识的物理端口相对应的虚拟接口。

在一种实现方式中,发送模块350还用于:

向数据平面设备发送默认流表,其中,默认流表的匹配项是用户设备发送的上线报文的类型或用户设置的匹配对象,默认流表的动作项是将连接有用户设备的物理端口的端口标识封装入上线报文,在连接有用户设备的物理端口转发。

在一种实现方式中,报文还携带有数据平面设备的连接有用户设备的物理端口的端口标识与VLAN/VXLAN/端口MAC的对应关系,

上述上线处理装置还可以包括:

获取模块(未示出),用于若连接有用户设备的物理端口的端口标识与所创建的虚拟接口相对应,则获取虚拟接口与VLAN/VXLAN/端口MAC的对应关系,向数据平面设备下发用于指导用户设备上线的流表项。

图4是根据一示例性实施例示出的一种上线处理装置的结构框图,该上线处理装置可以应用于数据平面设备。如图4所示,该上线处理装置400可以包括流表接收模块410、报文接收模块430、封装模块450和发送模块470。

流表接收模块410用于接收控制平面设备发送的默认流表,其中,默认流表的匹配项是用户设备发送的上线报文的类型或者用户设置的匹配对象,默认流表的动作项是将数据平面设备的连接有用户设备的物理端口的端口标识封装入上线报文,在连接有用户设备的物理端口转发。

报文接收模块430用于接收用户设备发送的上线报文。

封装模块450与流表接收模块410和报文接收模块430连接,用于将数据平面设备的连接有用户设备的物理端口的端口标识封装入上线报文。

发送模块470与封装模块450连接,用于在连接有用户设备的物理端口,向控制平面设备发送封装后的报文。

在一种实现方式中,默认流表的动作项是将数据平面设备的连接有用户设备的物理端口的端口标识封装入上线报文,包括:

默认流表的动作项是将数据平面设备的连接有用户设备的物理端口的端口标识与VLAN/VXLAN/端口MAC的对应关系封装入上线报文,

封装模块450被配置为:

将数据平面设备的连接有用户设备的物理端口的端口标识与VLAN/VXLAN/端口MAC的对应关系封装入上线报文。

关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。

图5是根据一示例性实施例示出的一种上线处理装置的硬件结构框图。参照图5,该装置500可包括处理器901、存储有机器可执行指令的机器可读存储介质902。处理器901与机器可读存储介质902可经由系统总线903通信。并且,处理器901通过读取机器可读存储介质902中与隧道选择逻辑对应的机器可执行指令以执行上文所述的隧道选择方法。

本文中提到的机器可读存储介质902可以是任何电子、磁性、光学或其它物理存储装置,可以包含或存储信息,如可执行指令、数据,等等。例如,机器可读存储介质可以是:RAM(Radom Access Memory,随机存取存储器)、易失存储器、非易失性存储器、闪存、存储驱动器(如硬盘驱动器)、固态硬盘、任何类型的存储盘(如光盘、dvd等),或者类似的存储介质,或者它们的组合。

以上已经描述了本公开的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。

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