首页 > 专利 > 上海斐讯数据通信技术有限公司 > 一种基于SDN的数据转发系统及方法专利详情

一种基于SDN的数据转发系统及方法   0    0

有效专利 查看PDF
专利申请流程有哪些步骤?
专利申请流程图
申请
申请号:指国家知识产权局受理一件专利申请时给予该专利申请的一个标示号码。唯一性原则。
申请日:提出专利申请之日。
2016-10-25
申请公布
申请公布指发明专利申请经初步审查合格后,自申请日(或优先权日)起18个月期满时的公布或根据申请人的请求提前进行的公布。
申请公布号:专利申请过程中,在尚未取得专利授权之前,国家专利局《专利公报》公开专利时的编号。
申请公布日:申请公开的日期,即在专利公报上予以公开的日期。
2017-03-15
授权
授权指对发明专利申请经实质审查没有发现驳回理由,授予发明专利权;或对实用新型或外观设计专利申请经初步审查没有发现驳回理由,授予实用新型专利权或外观设计专利权。
2019-10-11
预估到期
发明专利权的期限为二十年,实用新型专利权期限为十年,外观设计专利权期限为十五年,均自申请日起计算。专利届满后法律终止保护。
2036-10-25
基本信息
有效性 有效专利 专利类型 发明专利
申请号 CN201610936286.3 申请日 2016-10-25
公开/公告号 CN106375223B 公开/公告日 2019-10-11
授权日 2019-10-11 预估到期日 2036-10-25
申请年 2016年 公开/公告年 2019年
缴费截止日 2022-11-25
分类号 H04L12/761 主分类号 H04L12/761
是否联合申请 独立申请 文献类型号 B
独权数量 1 从权数量 5
权利要求数量 6 非专利引证数量 0
引用专利数量 4 被引证专利数量 0
非专利引证
引用专利 CN104579894A、CN102075422A、CN103647720A、US2014098815A1 被引证专利
专利权维持 4 专利申请国编码 CN
专利事件 转让 事务标签 公开、实质审查、授权、权利转移
申请人信息
申请人 第一申请人
专利权人 上海斐讯数据通信技术有限公司 当前专利权人 蚌埠立超信息科技有限公司
发明人 翟跃 第一发明人 翟跃
地址 上海市松江区思贤路3666号 邮编 201616
申请人数量 1 发明人数量 1
申请人所在省 上海市 申请人所在市 上海市松江区
代理人信息
代理机构
专利代理机构是经省专利管理局审核,国家知识产权局批准设立,可以接受委托人的委托,在委托权限范围内以委托人的名义办理专利申请或其他专利事务的服务机构。
浙江千克知识产权代理有限公司 代理人
专利代理师是代理他人进行专利申请和办理其他专利事务,取得一定资格的人。
周希良
摘要
本发明涉及SDN技术领域,具体为一种基于SDN的数据转发系统及方法。本发明系统包括SDN控制器和SDN交换机,SDN控制器根据来自SDN交换机的IGMP控制报文生成组播转发表,并根据所述组播转发表下发流表至SDN交换机;SDN交换机根据所述流表转发/丢弃IGMP数据报文。基于SDN架构,SDN控制器根据IGMP控制报文生成全网络的组播转发表,并根据所述组播转发表下发流表,后续的组播流量根据所述流表进行转发,实现全网络的组播控制。
  • 摘要附图
    一种基于SDN的数据转发系统及方法
  • 说明书附图:图1
    一种基于SDN的数据转发系统及方法
  • 说明书附图:图2
    一种基于SDN的数据转发系统及方法
  • 说明书附图:图3
    一种基于SDN的数据转发系统及方法
  • 说明书附图:图4
    一种基于SDN的数据转发系统及方法
  • 说明书附图:图5
    一种基于SDN的数据转发系统及方法
  • 说明书附图:图6
    一种基于SDN的数据转发系统及方法
法律状态
序号 法律状态公告日 法律状态 法律状态信息
1 2021-03-26 专利权的转移 登记生效日: 2021.03.16 专利权人由蚌埠立超信息科技有限公司变更为湖州帷幄知识产权运营有限公司 地址由233000 安徽省蚌埠市燕山路8319号(上理工科技园6号302室)变更为313000 浙江省湖州市吴兴区爱山街道新天地商务写字楼1019室
2 2019-10-11 授权
3 2017-09-22 著录事项变更 申请人由上海斐讯数据通信技术有限公司变更为上海斐讯数据通信技术有限公司 地址由201616 上海市松江区贤路3666号变更为201616 上海市松江区思贤路3666号
4 2017-03-15 实质审查的生效 IPC(主分类): H04L 12/761 专利申请号: 201610936286.3 申请日: 2016.10.25
5 2017-02-01 公开
权利要求
权利要求书是申请文件最核心的部分,是申请人向国家申请保护他的发明创造及划定保护范围的文件。
1.一种基于SDN的数据转发系统,包括SDN控制器和SDN交换机,其特征在于:SDN控制器根据来自SDN交换机的IGMP控制报文生成组播转发表,并根据所述组播转发表下发流表至SDN交换机;SDN交换机根据所述流表转发/丢弃IGMP数据报文;
其中,IGMP控制报文,至少包括IGMP报告报文、IGMP离开报文、IGMP查询报文;
组播转发表,至少包括组播地址信息,查询端口信息、成员端口信息;
查询端口信息,至少包括接收所述IGMP查询报文的SDN交换机的ID信息、接收所述IGMP查询报文的端口信息;
成员端口信息,至少包括接收所述IGMP报告报文的SDN交换机的ID信息、接收所述IGMP报告报文的端口信息、接收所述IGMP报告报文的端口老化时间信息;
SDN控制器根据来自成员端口的IGMP报告报文,学习所述IGMP报告报文的组播IP地址信息,生成成员端口信息并添加至组播转发表;
SDN控制器根据来自成员端口的IGMP离开报文,如果该成员端口为组播转发表中的最后一个成员端口,移除所述组播转发表;否则,将该成员端口对应的成员端口信息从组播转发表中移除;
SDN控制器根据来自查询端口的IGMP查询报文,学习所述IGMP查询报文的组播IP地址,生成查询端口信息并添加至所述组播转发表。

2.根据权利要求1所述的一种基于SDN的数据转发系统,其特征在于:SDN交换机接收IGMP数据报文,如果所述IGMP数据报文与所述流表匹配,则根据所述流表转发所述IGMP数据报文。

3.根据权利要求1所述的一种基于SDN的数据转发系统,其特征在于:SDN交换机接收IGMP数据报文,如果所述IGMP数据报文与所述流表不匹配,则丢弃所述IGMP数据报文。

4.根据权利要求1所述的一种基于SDN的数据转发系统,其特征在于:SDN交换机接收IGMP控制报文,并转发至所述SDN控制器。

5.一种基于SDN的数据转发方法,适用于包括SDN控制器和SDN交换机的SDN系统;其特征是按如下步骤:
步骤1,SDN交换机发送IGMP控制报文至所述SDN控制器;
步骤2,SDN控制器根据所述IGMP控制报文生成组播转发表;
步骤3,SDN控制器根据所述组播转发表下发流表至所述SDN交换器;
其中,IGMP控制报文,至少包括IGMP查询报文、IGMP报告报文、IGMP离开报文;
组播转发表,至少包括组播地址信息,查询端口信息、成员端口信息;
查询端口信息,至少包括接收所述IGMP查询报文的SDN交换机的ID信息、接收所述IGMP查询报文的端口信息;
成员端口信息,至少包括接收所述IGMP报告报文的SDN交换机的ID信息、接收所述IGMP报告报文的端口信息、接收所述IGMP报告报文的端口老化时间信息;
步骤2中,SDN控制器接收来自交换机的IGMP控制报文,并判断控制报文类型;
如果是IGMP报告报文,学习所述IGMP报告报文的组播IP地址信息,生成成员端口信息并添加至组播转发表;
如果是IGMP离开报文,判断该IGMP离开报文对应的成员端口是否为组播转发表中的最后一个成员端口;如果是,则移除所述组播转发表;否则,将该成员端口对应的成员端口信息从组播转发表中移除;
如果是IGMP查询报文,学习所述IGMP查询报文的组播IP地址,生成查询端口信息并添加至所述组播转发表。

6.根据权利要求5所述的一种基于SDN的数据转发方法,其特征在于:步骤1之前进行步骤1-1,SDN交换机接收组播报文,判断报文类型;如果是IGMP控制报文,则转发至SDN控制器;如果是IGMP数据报文并且与所述流表匹配,则按照所述流表转发所述IGMP数据报文;如果是IGMP数据报文并且与所述流表不匹配,则丢弃所述IGMP数据报文。
说明书

技术领域

[0001] 本发明属于SDN技术领域,具体涉及一种基于SDN的数据转发系统及方法。

背景技术

[0002] 在网络中如果要将信息发送给多个主机而非所有主机,若采用广播方式实现,不仅会将信息发送给不需要的主机而浪费带宽,也不能实现跨网段发送;若采用单播方式实现,重复的IP包不仅会占用大量带宽,也会增加源主机的负载。所以,传统的单播和广播通信方式不能有效地解决单点发送、多点接收的问题。组播是指在IP网络中将数据包以尽力传送的形式发送到某个确定的节点集合(即组播组),其基本思想是:源主机(即组播源)只发送一份数据,其目的地址为组播组地址;组播组中的所有接收者都可收到同样的数据拷贝,并且只有组播组内的主机可以接收该数据,而其它主机则不能收到。
[0003] IGMP Snooping 是 Internet Group Management Protocol Snooping(互联网组管理协议窥探)的简称,它是运行在二层设备上的组播约束机制,用于管理和控制组播组。当二层设备没有运行 IGMP Snooping 时,组播数据在二层被广播;当二层设备运行了 IGMP Snooping后,已知组播组的组播数据不会在二层被广播,而在二层被组播给指定的接收者。运行 IGMP Snooping 的二层设备通过对收到的 IGMP 报文进行分析,为端口和组播 MAC 地址建立起映射关系,并根据这样的映射关系建立和维护组播转发表并根据组播转发表进行组播数据转发(如图1为传统IGMP Snooping技术原理图)。组播转发表中的表项有组播 MAC 地址,源 MAC,VLAN ID,端口位图等。目前,有些 CPE(CPE :Customer Premise Equipment,物理上位于用户层的硬件,包括调制解调器、集线器、交换机、路由器)上是用软件表来实现 IGMP Snooping 功能。使用动态方法创建和删除表项,当收到 IGMP 加入报文时,占用 CPU 的内存空间即时创建一个软件表项,当收到 IGMP 离开报文时,则删去该表项,同时释放被占用的内存空间。使用这种动态方法创建和删除软件表项,频繁地分配和释放内存,容易导致内存碎片的产生。
[0004] 如公开号为CN103647720A的专利公开了一种IGMP Snooping的处理方法及装置,涉及组播技术领域,显著降低了IGMP Snooping的加入和离开延时,从而减少了频道的切换时间,提高用户了体验。该发明的具体实施例包括:在线卡接收到主控卡下发的使能IGMP Snooping和开启立即离开功能的配置之后,当接收到主机发送的指示消息时,就能够直接在线卡处理该指示消息。
[0005] 现有IGMP Snooping只是针对某一台交换设备,配置是分布式的,如果网络拓扑复杂,采用静态的方法创建和删除软件表项的配置操作非常繁琐。

发明内容

[0006] 本发明的目的是提供一种稳定性高、配置简单、网络拓扑简单、可高效率实现全网的组播转发的基于SDN的数据转发系统及方法。
[0007] 为达到上述目的,本发明采取如下技术方案:
[0008] 一种基于SDN的数据转发系统,包括SDN控制器和SDN交换机,SDN控制器根据来自SDN交换机的IGMP控制报文生成组播转发表,并根据所述组播转发表下发流表至SDN交换机;SDN交换机根据所述流表转发/丢弃IGMP数据报文。其中,IGMP控制报文,至少包括IGMP报告报文、IGMP 离开报文、IGMP 查询报文;组播转发表,至少包括组播地址信息,查询端口信息、成员端口信息;查询端口信息,至少包括接收所述IGMP 查询报文的SDN交换机的ID信息、接收所述IGMP 查询报文的端口信息;成员端口信息,至少包括接收所述IGMP 报告报文的SDN交换机的ID信息、接收所述IGMP 报告报文的端口信息、接收所述IGMP 报告报文的端口老化时间信息。
[0009] 作为优选,SDN控制器根据来自成员端口的IGMP 报告报文,学习所述IGMP 报告报文的组播IP地址信息,生成成员端口信息并添加至组播转发表。
[0010] 作为优选,SDN控制器根据来自成员端口的IGMP 离开报文,如果该成员端口为组播转发表中的最后一个成员端口,移除所述组播转发表;否则,将该成员端口对应的成员端口信息从组播转发表中移除。
[0011] 作为优选,SDN控制器根据来自查询端口的IGMP查询报文,学习所述IGMP查询报文的组播IP地址,生成查询端口信息并添加至所述组播转发表。
[0012] 作为优选,SDN交换机接收IGMP数据报文,如果所述IGMP数据报文与所述流表匹配,则根据所述流表转发所述IGMP数据报文。
[0013] 作为优选,SDN交换机接收IGMP数据报文,如果所述IGMP数据报文与所述流表不匹配,则丢弃所述IGMP数据报文。
[0014] 作为优选,SDN交换机接收IGMP控制报文,并转发至所述SDN控制器。
[0015] 本发明还公开了一种基于SDN的数据转发方法,适用于包括SDN控制器和SDN交换机的SDN系统;其按如下步骤:
[0016] 步骤1,SDN交换机发送IGMP控制报文至所述SDN控制器;
[0017] 步骤2,SDN控制器根据所述IGMP控制报文生产组播转发表;
[0018] 步骤3,SDN控制器根据所述组播转发表下发流表至所述SDN交换器;
[0019] 其中,IGMP控制报文,至少包括IGMP 查询报文、IGMP 报告报文、IGMP离开报文;组播转发表,至少包括组播地址信息,查询端口信息、成员端口信息;查询端口信息,至少包括接收所述IGMP查询报文的SDN交换机的ID信息、接收所述IGMP查询报文的端口信息;成员端口信息,至少包括接收所述IGMP报告报文的SDN交换机的ID信息、接收所述IGMP 报告报文的端口信息、接收所述IGMP报告报文的端口老化时间信息。
[0020] 作为优选,步骤2中,SDN控制器接收来自交换机的IGMP控制报文,并判断控制报文类型:如果是IGMP报告报文,学习所述IGMP报告报文的组播IP地址信息,生成成员端口信息并添加至组播转发表;如果是IGMP离开报文,判断该IGMP离开报文对应的成员端口是否为组播转发表中的最后一个成员端口;如果是,则移除所述组播转发表;否则,将该成员端口对应的成员端口信息从组播转发表中移除;如果是IGMP 查询报文,学习所述IGMP 查询报文的组播IP地址,生成查询端口信息并添加至所述组播转发表。
[0021] 作为优选,步骤1之前进行步骤1-1,SDN交换机接收组播报文,判断报文类型;如果是IGMP控制报文,则转发至SDN控制器;如果是IGMP数据报文并且与所述流表匹配,则按照所述流表转发所述IGMP数据报文;如果是IGMP数据报文并且与所述流表不匹配,则丢弃所述IGMP数据报文。
[0022] 本发明基于SDN架构,SDN控制器根据IGMP控制报文生成全网络的组播转发表,并根据所述组播转发表下发流表,后续的组播流量根据所述流表进行转发,实现全网络的组播控制。

实施方案

[0029] 以下是本发明的具体实施例并结合附图,对本发明的技术方案作进一步的描述,但本发明并不限于这些实施例。
[0030] 实施例一
[0031] 如图2所示,本实施例一种基于SDN的IGMP Snooping处理系统,其包括SDN控制器和SDN交换机(S0、S1、S2、S3)。组播服务器通过SDN交换机S3发送IGMP 查询(IGMP Query)报文,对特定组播组进查询,组播客户端通过SDN交换机S1发送IGMP报告(IGMP Report)报文以提出连接请求,加入特定组播组。
[0032] SDN控制器根据来自SDN交换机的IGMP控制报文生成组播转发表,并根据所述组播转发表下发流表至SDN交换机;SDN交换机根据所述流表转发/丢弃IGMP数据报文。
[0033] SDN控制器应支持基于SDN的IGMP Snooping技术配置任务序列,应包括基于SDN的IGMP Snooping功能打开或者关闭。
[0034]配置项 含义
基于SDN的igmp snooping功能 打开或关闭基于SDN的igmp snooping功能[0035] IGMP控制报文封装在IP层上,具体包括IGMP查询(IGMP Report)报文、IGMP离开(IGMP Leave)报文、IGMP查询(IGMP Query)报文。
[0036] 组播客户端的IGMP Report报文,包含组播客户端指定要加入的特定组播组的组播IP地址。IGMP Report报文被成员端口接收,并按照一定格式被封装转发至SDN控制器;SDN控制器对接收到的报文进行解析,获得并学习该IGMP Report报文中包含的组播IP地址(组播IP地址,标识特定组播组的唯一标识),获得接收该IGMP Report报文的SDN交换机S1的MAC地址和端口号,并将该MAC地址和端口号作为成员端口信息,添加至组播转发表中。组播客户端完成特定组播组的加入。
[0037] 本实施例中,学习组播IP地址是指:SDN控制器获得组播IP地址以后,在本地查找是否已存在该组播IP地址的组播转发表,如果不存在,则为该特定组播组建立组播转发表。
[0038] 组播客户端的IGMP Leave报文,包含组播客户端指定要离开的特定组播组的组播IP地址。IGMP Leave报文被成员端口接收,并按照一定格式被封装为转发至SDN控制器;SDN控制器对接收到的报文进行解析,获得该IGMP Report报文中包含的组播IP地址,获得接收该IGMP Leave报文的SDN交换机S1的MAC地址和端口号,并将该MAC地址和端口号作为成员端口信息;根据获得的组播IP地址查找该特定组播组的组播转发表,将该成员端口信息从该组播转发表删除;如果该成员端口为该组播转发表中的最后一个成员端口,则直接将该组播转发表删除。
[0039] 组播服务器的IGMP Query报文,包含组播服务器指定要查询的特定组播组的组播IP地址。IGMP Query报文被查询端口接收,并按照一定格式被封装转发至SDN控制器;SDN控制器对接收到的报文进行解析,并按照一定格式被封装转发至SDN控制器;SDN控制器对接收到的报文进行解析,获得并学习该IGMP Report报文中包含的组播IP地址,获得接收该IGMP Query报文的SDN交换机S3的MAC地址和端口号,并将该MAC地址和端口号作为查询端口信息,添加至组播转发表中。最后,根据组播转发表下发流表。
[0040]
[0041] SDN交换机S0、S2,接收组播报文,并判断报文类型:
[0042] 如果为IGMP控制报文,则将该IGMP控制报文转发至SDN控制器;
[0043] 如果为IGMP数据报文,则进一步将该IGMP数据报文与SDN控制器下发的流表进行匹配:
[0044] 如果匹配成功,SDN交换机根据流表转发该IGMP数据报文;
[0045] 如果匹配失败,SDN交换机丢弃该IGMP数据报文。
[0046] SDN交换机和SDN控制器需要支持扩充流表,其定义如下表所示:Match字段 Counter字段 instruction字段
组播IP地址 对匹配成功的包进行计数 转发组播数据报文
[0047] IGMP数据报文与流表是否匹配,即判断IGMP数据报文中的组播IP地址与流表的Match字段中的组播IP地址是否匹配。
[0048] 基于上述实施例的IGMP Snooping处理系统的处理方法流程如图3所示,具体步骤如下:
[0049] 步骤1,SDN交换机发送未匹配流表的IGMP控制报文至SDN控制器;
[0050] 步骤2,SDN控制器通过解析获得IGMP控制报文、SDN交换机ID(SDN交换机的MAC地址)、SDN交换机端口信息(SDN交换机的端口号);
[0051] 步骤3,SDN控制器生成组播转发表;
[0052] 步骤4,SDN控制器根据组播转发表下发流表。
[0053] SDN控制器处理流程如图4。
[0054] 具体地,在步骤2的过程中,SDN控制器从SDN交换机接收IGMP控制报文,并判断IGMP控制报文类型,如果是IGMP Report报文,学习所述IGMP Report报文的组播IP地址信息,生成成员端口信息并添加至组播转发表。
[0055] 在步骤2的过程中,SDN控制器从SDN交换机接收IGMP控制报文,并判断IGMP控制报文类型,如果是IGMP Leave报文,判断该IGMP Leave报文对应的成员端口是否为组播转发表中的最后一个成员端口:如果是,则移除所述组播转发表;否则,将该成员端口对应的成员端口信息从组播转发表中移除。
[0056] 在步骤2的过程中,SDN控制器从SDN交换机接收IGMP控制报文,并判断IGMP控制报文类型,如果是IGMP Query报文,学习所述IGMP Query报文的组播IP地址,生成查询端口信息并添加至所述组播转发表。
[0057] SDN交换机处理流程如图5。
[0058] 具体地,在步骤1之前,进行步骤1-1:SDN交换机接收组播报文,判断报文类型是IGMP控制报文还是IGMP数据报文。
[0059] 进行步骤1-1中,如果判断报文类型是IGMP控制报文,则将IGMP控制报文发送至SDN控制器。
[0060] 进行步骤1-1中,如果判断报文类型是IGMP数据报文则进一步判断IGMP数据报文是否与SDN控制器下发的流表匹配。如果IGMP数据报文不匹配流表,SDN交换机丢弃该IGMP数据报文。如果IGMP数据报文匹配流表,则SDN交换机根据流表转发组播该IGMP数据报文。
[0061] 对本实施例所述的技术方案,进行测试,测试步骤如下:
[0062] 按照图6搭建测试环境:包括组播服务器、组播客户端A、组播客户端B、SDN控制器、SDN交换机S0、SDN交换机S1、SDN交换机S2、SDN交换机S3。组播客户端A与组播客户端B、以及组播服务器组成特定组播组。
[0063] 组播客户端A和组播客户端B发送IGMP Report报文加入特定组播组,组播客户端A和组播客户端B发送IGMP Leave报文离开特定组播组,组播服务器发送IGMP Query报文查询特定组播组信息和状态。SDN控制器根据接收到的IGMP控制报文维护组播转发表:SDN控制器根据接收到的IGMP Report报文和IGMP Query建立或者更新组播转发表,根据接收到的IGMP Leave报文删除组播转发表中的相关端口信息,或者删除整个组播转发表。
[0064] 组播流量的IGMP数据报文由组播服务器经SDN交换机S3发出,S3交换机接收到该IGMP数据流量以后,与下发流表进行匹配成功,根据流表将IGMP数据包转发至SDN交换机S1;SDN交换机S1接收到该IGMP数据以后,与下发流表进行匹配成功,发送至组播客户端A,并且将该IGMP数据转发至SDN交换机S0;SDN交换机S0接收到该IGMP数据以后,与下发流表进行匹配成功,发送至组播客户端B。
[0065] 本发明所采取的技术方案基于SDN架构,其SDN控制器根据IGMP控制报文生成全网络的组播转发表,并根据所述组播转发表下发流表,后续的组播流量根据所述流表进行转发,实现全网络的组播控制。
[0066] 本发明基于SDN的数据转发系统及方法具有稳定性高、配置简单、网络拓扑简单、可高效率实现全网的组播转发等诸多特点。
[0067] 本文中所描述的具体实施例仅仅是对本发明精神作举例说明。本发明所属技术领域的技术人员可以对所描述的具体实施例做各种各样的修改或补充或采用类似的方式替代,但并不会偏离本发明的精神或者超越所附权利要求书所定义的范围。

附图说明

[0023] 图1是传统IGMP Snooping技术原理图;
[0024] 图2是本发明一种优选实施例的基于SDN的IGMP Snooping系统示意图;
[0025] 图3 是本发明一种优选实施例的基于SDN的IGMP Snooping处理流程图;
[0026] 图4是本发明一种优选实施例的SDN控制器处理流程图;
[0027] 图5是本发明一种优选实施例的SDN交换机处理流程图;
[0028] 图6是本发明一种优选实施例的模拟测试环境的示意图。
版权所有:盲专网 ©2023 zlpt.xyz  蜀ICP备2023003576号