[发明专利]SDN网络中网络编码进行组播传输的方法有效

专利信息
申请号: 201710368670.2 申请日: 2017-05-23
公开(公告)号: CN107196860B 公开(公告)日: 2021-06-04
发明(设计)人: 邢焕来;周芯宇;李可;杨慧;叶佳 申请(专利权)人: 西南交通大学
主分类号: H04L12/761 分类号: H04L12/761;H04L12/931;H04L12/18;H04L1/00
代理公司: 成都宏顺专利代理事务所(普通合伙) 51227 代理人: 李顺德
地址: 610031 四*** 国省代码: 四川;51
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: sdn 网络 编码 进行 传输 方法
【权利要求书】:

1.SDN网络中网络编码进行组播传输的方法,其特征在于,其步骤如下:

a、控制器构建全局网络拓扑信息;

b、组播接收端成员入组;

c、组播发送端发送组播流;

d、控制器计算路由路径、下发流表项;

e、Openvswitch交换机源发送节点初次编码原始组播数据;

f、Openvswitch交换机中间编码节点再次编码中间数据;

g、Openvswitch交换机目的解码节点解码还原数据;

其中,所述Openvswitch交换机具有支持网络编码的OpenFlow协议,所述控制器为支持OpenFlow协议的控制器,所述Openvswitch交换机为支持所述OpenFlow协议并且可编码、解码的交换机;

所述OpenFlow协议中设有支持网络编码的NCAction,该NCAction可以和其他Action组合成一个行动集,装载到所述流表项中,每次匹配到该流表项时,都执行该行动集;

控制器提供可以使用的NCAction对象;

Openvswitch交换机具有NCAction并且具有可编码、解码的模块,所述NCAction由控制器主动发往所述Openvswitch交换机,包含在下流表项的指令集中,当数据包匹配到该流表项时,便执行对应的网络编码、解码动作;

匹配流表项时,在“structxlate_out”类型参数“xout”中添加NCAction的2个字段:nc_type和nc_max_flow,在匹配到或检查到含有NCAction的流表项时,再执行该Action时,把NCAction的nc_type和nc_max_flow通过“xout”传出去,在数据包统一转发回内核模块前进行编码、或解码操作;

在上述的“xout”传出参数中设置一个标志,名为“boolhas_nc”,表示该条流表项是否含有NCAction,执行Action时,若匹配到含有NCAction的流表项,该标志“has_nc”置true,新增流表项安装到内核模块前,先检查该标志“has_nc”,为true则不用安装,否则要安装;

对源发送端编码节点的OutputAction做特殊处理,一个OutputAction只能转发一种编码层次的数据包,下一种不同编码层次的数据包需要从另一个不同的端口转发出去,源编码节点的编码层次等于网络最大流;

通过自行扩张在OpenFlow原始协议设置NCAction,自行扩展方法如下:

(1)在Ryu目录中的ofproto/ofproto_v1_3.py文件中定义2个常量:

1)OFPAT_NC=28,该常量代表NCAction的枚举标识,必须与Openvswitch中定义的NCAction标识相等;

2)OFP_ACTION_NC_SIZE=16,该常量表示NCAction的数据长度;

(2)在Ryu目录中的ofproto/ofproto_v1_3_parser.py文件中定义NCAction的实现类:

1)实现类必须继承自Ryu提供的OpenFlow中所有Action的基类“OFPAction”:

classOFPActionNC(OFPAction);

2)实现类必须用Ryu指定的装饰器结合上述定义的常量进行修饰,

@OFPAction.register_action_type(OFPAT_NC,OFP_ACTION_NC_SIZE)

classOFPActionNC(OFPAction);

3)实现类必须实现3个接口:

__init__():用于初始化;

parser():用于从数据流中解析出NCAction;

serialize():用于把NCAction打包到数据流中;

在Openvswitch中扩展新的Action,以下是主要步骤:

在Openvswitch目录中的include/OpenFlow/OpenFlow-1.3.h文件中,找到OpenFlow-1.3协议的Action枚举定义,添加NCAction的枚举定义值,该枚举定义值必须与Ryu控制器中定义的NCAction枚举标识一致;

在include/OpenFlow/OpenFlow-1.3.h文件中,添加NCAction对应的结构体定义,说明NCAction包含的字段属性;

在lib/ofp-util.def文件中,在“#ifndefOFPAT11_ACTION”区域中,添加NCAction对应的宏定义;

在lib/ofp-actions.c文件中,在“unionofp_action”定义中,声明NCAction对应的结构体变量;

在lib/ofp-actions.h文件中,添加NCAction对应的抽象Action宏定义;

在lib/ofp-actions.h文件中,添加NCAction对应的抽象Action结构体定义;

在lib/ofp-actions.c文件中,在接口“ofpact_from_OpenFlow11()”中,添加NCAction对应的case分支,生成其对应的抽象Action;

在lib/ofp-actions.c文件中,在接口“ovs_instruction_type_from_ofpact_type()”和接口“ofpact_check__()”中,添加NCAction对应的case分支,返回检测结果为真;

在lib/ofp-actions.c文件中,在接口“ofpact_is_allowed_in_actions_set()”中,添加NCAction对应的case分支,表明NCAction支持填充到行动集中;

在lib/ofp-actions.c文件中,在接口“ofpacts_execute_action_set()”中,添加NCAction对应的语句,指定NCAction在行动集中的执行顺序;

在ofproto/ofproto-dpif-xlate.c文件中,在接口“do_xlate_actions()”中,添加NCAction对应的case分支,执行相应的操作。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西南交通大学,未经西南交通大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201710368670.2/1.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top