一种在SPTN设备上实现QoS功能的方法及系统
技术领域
本发明涉及光通信、光互连和光信息传输技术领域,具体涉及一种在SPTN设备上实现QoS功能的方法及系统。
背景技术
软件定义网络(Software Design Network,SDN)是一种优化和简化网络操作的全新网络架构,它将网络的控制和转发平面分离,同时将智能化的控制面集中化放置,提高了网络的便捷性、灵活性和创新能力。当前,PTN(Packet Transport Network分组传送网络)设备在应对SDN技术的冲击下,迎来了新一代的SPTN(Software Defined PacketTransport Network)技术,它旨在解决传统PTN设备种类繁多、业务变更困难,运维成本高、效率低的弊端,利用一个统一的控制平台来实现,简化业务开通流程,降低了故障排查难度,同时带来了查询统计方便的优势。
QoS(Quality of Service,服务质量)作为PTN网络的核心功能之一,是用于解决网络延迟和阻塞等问题的一种安全机制,它可以有效解决特定数据的延迟、抖动、丢包等问题,为报文提供端到端的服务质量保障,QoS机制在PTN设备中主要提供以下功能:1)提供客户定制的服务质量保证;2)提供网络流量的监管和执行技术;3)提供网络拥塞的避免和处理技术。
目前PTN主要依靠网管系统通过人工业务编排和手动配置的方式进行QoS业务配置,而SPTN设备因为仍处于研发和推广阶段,SPTN设备的QoS业务配置实现未形成统一的配置及下发规范,OpenFlow协议也无法实现控制器对分组传送网络SPTN设备中QoS的部署工作。
发明内容
针对现有技术中存在的缺陷,本发明的目的在于提供一种在SPTN设备上实现QoS功能的方法及系统,控制器与SPTN设备协同配置QoS,使得SPTN设备能够支持QoS功能。
为达到以上目的,本发明采取的技术方案是:
一种在SPTN设备上实现QoS功能的方法,具体步骤如下:
S1,用户在北向接口中配置QoS业务的配置数据,配置数据包括QoS业务的优先级标识、保证通过速率和最大允许速率,以及队列调度和拥塞策略;
S2,控制器根据QoS业务的优先级标识,生成入口和出口的flow mod消息,入口和出口的flow mod消息通过openflow协议下发,控制器根据保证通过速率和最大允许速率,生成meter mod消息,meter mod消息通过openflow协议下发,控制器根据队列调度和拥塞策略生成of-config消息,of-config消息通过netconf协议下发;
S3,SPTN设备的驱动模块接收入口和出口的flow mod消息、meter mod消息和of-config消息,并根据flow mod消息、出口的flow mod消息、meter mod消息和of-config消息进行相关配置,完成业务下发。
在上述技术方案的基础上,所述S2中生成入口的flow mod消息的步骤如下:
S211,控制器根据QoS业务的优先级标识,找出该优先级标识对应在入口映射关系表中的QoS指标;
S212,控制器根据QoS指标查找到对应的入口映射关系表,所述入口映射关系表的每一列内容对应一组映射关系,所述映射关系为交换机数据报文的中IP DSCP字段对应映射交换机对数据报文标记的流量类型和流量颜色,或交换机数据报文中的VLAN PCP字段和VLAN DEI字段的组合对应映射交换机对数据报文标记的流量类型和流量颜色;
S213,将所述入口映射关系表的每列内容封装为一个入口的flow mod消息,将所有入口映射关系表的入口的flow mod消息统一送往下发流表的队列中,再通过openflow协议发送至网口。
在上述技术方案的基础上,S221,控制器根据QoS业务的优先级标识,找出该优先级标识对应在出口映射关系表中的QoS指标;
S222,控制器根据QoS指标查找到对应的出口映射关系表,所述出口映射关系表的每一列内容对应一组映射关系,所述映射关系为交换机对数据报文标记的流量类型和流量颜色对应映射交换机数据报文中的MPLS-TC字段、VLAN PCP字段和VLAN DEI字段的组合;
S223,将所述出口映射关系表的每列内容封装为一个出口的flow mod消息,将所有出口映射关系表的出口的flow mod消息统一送往下发流表的队列中,再通过openflow协议发送至网口。
在上述技术方案的基础上,所述meter mod消息包括与业务对应的meter ID和meter band,所述meter band由band类型,和与band类型对应的令牌桶属性值组成。
在上述技术方案的基础上,所述band类型包括yellow band和red band,yellowband的速率rate为令牌桶保证通过速率CIR,yellow band的突发速率burst rate为令牌桶的大小CBS,red band的速率rate为令牌桶最大允许速率PIR,red band的突发速率burstrate为令牌桶的大小EBS。
在上述技术方案的基础上,所述S2中所述of-config消息生成的步骤:
S231,控制器检测其与netconf协议对接的SSH通道的是否连接,否,转入S232,是,则转入S233;
S232,控制器与netconf协议建立SSH通道,则转入S233;
S233,控制器根据队列调度和拥塞策略的数据生成符合YANG模型定义的数据,并转换为XML数据得到of-config消息。
在上述技术方案的基础上,of-config消息通过SSH通道传送给SPTN设备。
在上述技术方案的基础上,SPTN设备的驱动模块接收入口和出口的flow mod消息、meter mod消息和of-config消息的步骤包括:
控制器将入口和出口的flow mod消息以及meter mod消息发送给SPTN设备的openflow协议进程,经适配层转发,到达SPTN设备的驱动模块;
控制器将of-config消息发送至SPTN设备的netconf协议进程,经解密处理后发送给SPTN设备的openflow协议进程,经适配层转发,到达SPTN设备的驱动模块。
一种在SPTN设备上实现QoS功能的系统,包括:
数据配置模块,用于用户在北向接口中配置QoS业务的配置数据,配置数据包括QoS业务的优先级标识、保证通过速率和最大允许速率,以及队列调度和拥塞策略;
控制器包括openflow协议单元和netconf协议单元,所述openflow协议单元用于根据QoS业务的优先级标识,生成入口和出口的flow mod消息,根据保证通过速率和最大允许速率,生成meter mod消息,入口和出口的flow mod消息和meter mod消息通过openflow协议下发;netconf协议单元用于根据队列调度和拥塞策略生成of-config消息,of-config消息通过netconf协议下发;
SPTN设备包括驱动模块,驱动模块用于接收入口和出口的flow mod消息、metermod消息和of-config消息,并根据flow mod消息、出口的flow mod消息、meter mod消息和of-config消息进行相关配置,完成业务下发。
在上述技术方案的基础上,所述SPTN设备还包括netconf协议进程和openflow协议进程,其中,
所述netconf协议进程用于接收并解密处理所述控制器发送的of-config消息;
openflow协议进程用于接收所述控制器发送的入口和出口的flow mod消息、meter mod消息和所述netconf协议进程解密处理后of-config消息,经适配层转发,到达SPTN设备的驱动模块。
与现有技术相比,本发明的优点在于:
本发明的在SPTN设备上实现QoS功能的方法中通过openflow协议可以灵活修改SPTN设备的流表和组表项,来完成SPTN设备的数据流的基本操作设置和业务配置,通过netconf协议完成QoS配置模型的数据下发,使得SPTN设备资源配置部分由独立的netconf协议完成,从而在SPTN设备上实现QoS功能,符合面向对象的设计理念。openflow协议和netconf协议之间实现互补,提升配置多样性,且两者均为SDN南向标准协议,能够屏蔽设备差异。
附图说明
图1为本发明的方法流程图;
图2为本发明实施例中S2步骤中生成入口的flow mod消息的方法流程图;
图3为本发明实施例中S2步骤中生成出口的flow mod消息的方法流程图;
图4为本发明实施例中S2步骤中生成的of-config消息的方法流程图;
图5为本发明的系统框图。
具体实施方式
以下结合附图及实施例对本发明作进一步详细说明。
参见图1所示,本发明实施例提供一种在SPTN设备上实现QoS功能的方法,具体步骤如下:
S1,用户在SDN的北向接口中配置QoS业务的配置数据,配置数据包括QoS业务的优先级标识、保证通过速率和最大允许速率,以及队列调度和拥塞策略,队列调度和拥塞策略是进行流量调度和/或流量整形和/或流量拥塞丢包操作,并决定交换机的数据报文从指定接口输出、或缓存、或丢弃。
S2,控制器根据QoS业务的优先级标识,生成入口和出口的flow mod消息,入口和出口的flow mod消息通过openflow协议下发。控制器根据保证通过速率和最大允许速率,生成meter mod消息,meter mod消息通过openflow协议下发。meter mod消息包括与业务对应的meter ID和meter band,meter band由band类型,和与band类型对应的令牌桶属性值组成,band类型包括yellow band和red band,yellow band的速率rate为令牌桶保证通过速率CIR,yellow band的突发速率burst rate为令牌桶的大小CBS,red band的速率rate为令牌桶最大允许速率PIR,red band的突发速率burst rate为令牌桶的大小EBS,meter ID写入与QoS业务绑定的QoS策略流表项中的Instructions中。控制器根据队列调度和拥塞策略生成of-config消息,of-config消息通过netconf协议下发。实现了业务配置数据与SPTN设备配置数据的解耦,利用openflow协议来完成SPTN设备的数据流的基本操作设置和业务配置,利用netconf协议完成QoS配置模型的数据下发,保证SPTN设备的资源配置部分由独立的of-config消息来完成,符合面向对象的设计理念,由于openflow协议和netconf协议之间独立,提升了配置的多样性,且二者都是SDN南向标准协议,可以屏蔽SPTN设备差异。
其中,S2中生成入口的flow mod消息的步骤如下:
S211,控制器根据QoS业务的优先级标识,找出该优先级标识对应在入口映射关系表中的QoS指标,具体对应关系为优先级标识→流量类型→QoS指标;
S212,控制器根据QoS指标查找到对应的入口映射关系表,入口映射关系表的每一列内容是交换机的数据报文中的IP DSCP字段、VLAN PCP字段、VLAN DEI字段与交换机对数据报文标记的流量类型和流量颜色的数据组合,入口映射关系表的每一列内容对应一组映射关系,该映射关系为交换机数据报文中的IP DSCP字段对应映射交换机对数据报文标记的流量类型和流量颜色,或交换机数据报文中的VLAN PCP字段和VLAN DEI字段的组合对应映射交换机对数据报文标记的流量类型和流量颜色;
S213,将入口映射关系表的每列内容封装为一个入口的flow mod消息,其中,IPDSCP字段、VLAN PCP字段、VLAN DEI字段分别组封为三个OXM填充到flow mod消息的match域中,流量类型和流量颜色作为action封装在apply action的指令中。遍历控制器中所有的入口映射关系表,将所有入口映射关系表的入口的flow mod消息统一送往下发流表的队列中,再通过openflow协议发送至网口。
其中,S2中生成所述出口的flow mod消息的步骤如下:
S221,控制器根据QoS业务的优先级标识,找出该优先级标识对应在出口映射关系表中的QoS指标;
S222,控制器根据QoS指标查找对应的出口映射关系表,所述出口映射关系表的每一列内容对应一组映射关系,映射关系为交换机对数据报文标记的流量类型和流量颜色对应映射交换机数据报文的MPLS-TC字段、VLAN PCP字段和VLAN DEI字段的组合;
S223,将出口映射关系表的每列内容封装为一个出口的flow mod消息,遍历控制器中所有的出口映射关系表,将所有出口映射关系表的出口的flow mod消息统一送往下发流表的队列中,再通过openflow协议发送至网口。
其中,S2中of-config消息生成的步骤:
S231,控制器检测其与netconf对接的SSH通道的是否连接,否,转入S232,是,则转入S233;
S232,控制器与netconf协议建立SSH通道,则转入S233;
S233,控制器根据队列调度和拥塞策略的数据生成符合YANG模型定义的数据,并转换为可扩展标记语言XML数据得到of-config消息,of-config消息通过SSH通道传送给SPTN设备。
具体的of-config消息的形式如下所示:
S3,控制器将入口和出口的flow mod消息以及meter mod消息发送给SPTN设备的openflow协议进程,经适配层转发,到达SPTN设备的驱动模块;控制器将of-config消息发送至SPTN设备的netconf协议进程,进行解密处理后发送给SPTN设备的openflow协议进程,经适配层转发,到达SPTN设备的驱动模块。SPTN设备的驱动模块根据flow mod消息、出口的flow mod消息、meter mod消息和of-config消息进行相关配置,完成业务下发。
一种在SPTN设备上实现QoS功能的系统,其特征在于,包括:
数据配置模块,用于用户在北向接口中配置QoS业务的配置数据,配置数据包括QoS业务的优先级标识、保证通过速率和最大允许速率,以及队列调度和拥塞策略;控制器包括openflow协议单元和netconf协议单元,openflow协议单元用于根据QoS业务的优先级标识,生成入口和出口的flow mod消息,根据保证通过速率和最大允许速率,生成metermod消息,入口和出口的flow mod消息和meter mod消息通过openflow协议下发;netconf协议单元用于根据队列调度和拥塞策略生成of-config消息,of-config消息通过netconf协议下发;SPTN设备包括netconf协议进程、openflow协议进程和驱动模块,netconf协议进程用于接收并解密处理所述控制器发送的of-config消息;openflow协议进程用于接收所述控制器发送的入口和出口的flow mod消息、meter mod消息和所述netconf协议进程解密处理后of-config消息,经适配层转发,到达SPTN设备的驱动模块;驱动模块用于接收入口和出口的flow mod消息、meter mod消息和of-config消息,并根据flow mod消息、出口的flowmod消息、meter mod消息和of-config消息进行相关配置,完成业务下发。
本实施例中的数据配置模块能够完成QoS业务的配置数据,根据配置数据生成flow mod消息、meter mod消息和of-config消息,通过控制器的openflow协议单元和netconf协议单元进行flow mod消息、meter mod消息和of-config消息的下发,驱动模块根据flow mod消息、meter mod消息和of-config消息进行相关配置,完成业务下发。
本发明不局限于上述实施方式,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围之内。本说明书中未作详细描述的内容属于本领域专业技术人员公知的现有技术。