控制数据转发的方法及逻辑交换机技术

技术编号:10915646 阅读:103 留言:0更新日期:2015-01-15 09:21
本发明专利技术公开了一种控制数据转发的方法及逻辑交换机,本发明专利技术通过将完成相应流表操作的数据包按照预设桥接接口的桥接属性发送到第二逻辑交换机,实现了接收的数据包对同一类型的流表的流表项的匹配,并完成相应的流表项匹配出的操作指令对应的操作,有效避免了因细化流表带来的流表规模扩大,流表维护和更新复杂的问题。

【技术实现步骤摘要】
【专利摘要】本专利技术公开了一种控制数据转发的方法及逻辑交换机,本专利技术通过将完成相应流表操作的数据包按照预设桥接接口的桥接属性发送到第二逻辑交换机,实现了接收的数据包对同一类型的流表的流表项的匹配,并完成相应的流表项匹配出的操作指令对应的操作,有效避免了因细化流表带来的流表规模扩大,流表维护和更新复杂的问题。【专利说明】控制数据转发的方法及逻辑交换机
本专利技术涉及到OpenFlow协议下的数据转发领域,特别涉及到一种控制数据转发的方法及逻辑交换机。
技术介绍
OpenFlow交换机将原来完全由交换机/路由器控制的数据包转发过程转化为由OpenFlow交换机(OpenFlow Switch)和控制器(Controller)来共同完成,从而实现了数据转发和路由控制的分离。控制器可以通过事先规定好的接口操作来控制OpenFlow交换机中的流表,从而达到控制数据转发的目的。流表由很多个流表项组成,每个流表项就是一个转发规则。进入交换机的数据包通过查询流表来获得转发的目的端口。 根据OpenFlow管道及流表的描述,针对经过封装和解封装的数据包,需要前后多次查询相同类型的流表,才能获取到转发的目的端口。然而OpenFlow的管道处理规定,管道中相同类型的流表只有一个且只能查询一次,且管道中的流表不能跳转到已匹配过的同类型的流表(不能跳转到小序号流表)上再次处理。针对该问题,现有OpenFlow协议支持的解决方法是尽可能分解隧道,细化描述流,例如每用户每隧道展开流表项。但这样的方式导致流表项过多,流表规模扩大,使得流表的维护和更新复杂化
技术实现思路
本专利技术的主要目的为提供一种控制数据转发的方法,旨在实现接收的数据包对同一类型的流表的流表项的匹配,同时有效避免因细化流表带来的流表规模扩大,流表维护和更新复杂的问题。 本专利技术还提出一种控制数据转发的逻辑交换机,旨在实现接收的数据包对同一类型的流表的流表项的匹配,同时有效避免因细化流表带来的流表规模扩大,流表维护和更新复杂的问题。 本专利技术提出一种控制数据转发的方法,该方法包括: 当接收到数据包时,第一逻辑交换机按照流表管道上的流表匹配出的流表项对应的操作指令对数据包进行相应的操作并确定对应的出接口; 第一逻辑交换机判断所述确定的出接口是否是桥接接口 ; 当所述确定的出接口是桥接接口时,第一逻辑交换机将完成相应操作的数据包按照预设桥接接口的桥接属性发送到第二逻辑交换机。 优选地,在所述第一逻辑交换机判断所述确定的出接口是否是桥接接口的步骤之后,该方法还包括: 当所述确定的出接口不是桥接接口时,则第一逻辑交换机将完成相应操作之后的数据包按照流表管道上的流表匹配出的发送方式发送出去。 优选地,所述预设桥接接口的桥接属性包括第二逻辑交换机的身份标识和该数据包在所述的第二逻辑交换机上的入接口的身份标识。 优选地,所述第一逻辑交换机将完成相应操作的数据包按照预设桥接接口的桥接属性发送到第二逻辑交换机的步骤包括: 当确定的出接口是桥接接口时,填充元数据给第二逻辑交换机,所述元数据包括桥接令牌数,第一逻辑交换机将完成相应操作的数据包及元数据按照预设桥接接口的桥接属性发送到第二逻辑交换机。 优选地,在所述当确定的出接口是桥接接口时,第一逻辑交换机将完成相应操作的数据包按照预设桥接接口的桥接属性发送到第二逻辑交换机的步骤之后,该方法还包括: 所述第二逻辑交换机获取所述的第一逻辑交换机填充的元数据,并确定元数据中携带的桥接令牌数,判断所述确定的桥接令牌数是否为0 ; 若所述确定的桥接令牌数是0,则所述第二逻辑交换机将接收到的数据包丢弃或发送至控制器。 优选地,在所述判断所述确定的桥接令牌数是否为0的步骤之后,该方法还包括: 若所述确定的桥接令牌数不为0,则第二逻辑交换机按照流表管道上的流表匹配出的流表项对应的操作指令对发送来的数据包进行相应的操作并确定对应的出接口 ; 第二逻辑交换机判断确定的出接口是否是桥接接口 ; 当确定的出接口是桥接接口时,将元数据中的桥接令牌数减一,然后将完成相应的操作的数据包及桥接令牌数减一后的元数据按照预设桥接接口的桥接属性发送到第三逻辑交换机。 一种控制数据转发的逻辑交换机,该逻辑交换机包括: 数据处理模块,用于当接收到数据包时,按照流表管道上的流表匹配出的流表项对应的操作指令对数据包进行相应的操作并确定对应的出接口; 分析模块,用于判断所述确定的出接口是否是桥接接口 ; 数据转发模块,用于当所述确定的出接口是桥接接口时,将完成相应操作的数据包按照预设桥接接口的桥接属性发送到第二逻辑交换机。 优选地,所述数据转发模块,还用于当所述确定的出接口不是桥接接口时,将完成相应操作的数据包按照流表管道上的流表匹配出的发送方式发送出去。 优选地,所述预设桥接接口的桥接属性包括第二逻辑交换机的身份标识和该数据包在所述第二逻辑交换机上的入接口的身份标识。 优选地,所述数据处理模块,还用于当确定的出接口是桥接接口时,填充元数据给第二逻辑交换机,所述元数据包括桥接令牌数; 所述数据转发模块,还用于将完成相应操作的数据包按照预设桥接接口的桥接属性发送到第二逻辑交换机。 优选地,所述数据处理模块,还用于获取所述的第一逻辑交换机填充的元数据,并确定元数据中携带的桥接令牌数; 所述分析模块,还用于判断所述确定的桥接令牌数是否为0 ; 所述数据转发模块,还用于若所述确定的桥接令牌数是0,则将接收到的数据包丢弃或发送至控制器。 优选地,所述数据处理模块,还用于若所述确定的桥接令牌数不为0,按照流表管道上的流表匹配出的流表项对应的操作指令对发送来的数据包进行相应的操作并确定对应的出接口; 所述分析模块,还用于判断所述确定的出接口是否是桥接接口 ; 所述数据处理模块,还用于当所述确定的出接口是桥接接口时,将元数据中的桥接令牌数减一; 所述数据转发模块,还用于将完成相应操作的数据包及桥接令牌数减一后的元数据按照预设桥接接口的桥接属性发送到第三逻辑交换机。 相对现有技术,本专利技术通过将完成相应操作的数据包按照预设桥接接口的桥接属性发送到第二逻辑交换机,实现了接收的数据包对同一类型的流表的流表项的匹配,并完成相应的流表项匹配出的操作指令对应的操作,有效避免了因细化流表带来的流表规模扩大,流表维护和更新复杂的问题。 【专利附图】【附图说明】 图1为本专利技术控制数据转发的方法的第一实施例的具体流程图; 图2为本专利技术控制数据转发的方法中逻辑交换机的桥接结构一实施例的示意图; 图3为本专利技术控制数据转发的方法的第二实施例的具体流程图; 图4为图3中移动IP (互联网协议)代理场景中的逻辑交换机的流表的具体架构图; 图5为图3中L2VPN (2层虚拟私人网络)和L3VPN (3层虚拟私人网络)桥接场景中的逻辑交换机的流表的具体架构图; 图6为本专利技术控制数据转发的逻辑交换机的较佳实施例的具体架构图; 图7为图6中移动IP代理场景中的逻辑交换机的流表的具体架构图; 图8为图6中L2VPN和L3VPN桥接场景中的逻辑交换机的流表的具体架构图。 本专利技术目的的实现、功能特点及优点将结合实施例,参照附本文档来自技高网
...
控制数据转发的方法及逻辑交换机

【技术保护点】
一种控制数据转发的方法,其特征在于,该方法包括:当接收到数据包时,第一逻辑交换机按照流表管道上的流表匹配出的流表项对应的操作指令对数据包进行相应的操作并确定对应的出接口;第一逻辑交换机判断所述确定的出接口是否是桥接接口;当所述确定的出接口是桥接接口时,第一逻辑交换机将完成相应操作的数据包按照预设桥接接口的桥接属性发送到第二逻辑交换机。

【技术特征摘要】

【专利技术属性】
技术研发人员:梁乾灯尤建洁
申请(专利权)人:中兴通讯股份有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1