CN103685058B - 控制流数据的服务质量的方法和OpenFlow控制器 - Google Patents
控制流数据的服务质量的方法和OpenFlow控制器 Download PDFInfo
- Publication number
- CN103685058B CN103685058B CN201210334920.8A CN201210334920A CN103685058B CN 103685058 B CN103685058 B CN 103685058B CN 201210334920 A CN201210334920 A CN 201210334920A CN 103685058 B CN103685058 B CN 103685058B
- Authority
- CN
- China
- Prior art keywords
- qos
- frame
- control
- openflow
- data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
提供一种控制流数据的QoS的方法和OpenFlow控制器。一种基于OpenFlow控制流数据的QoS的方法,包括,在OpenFlow控制器端,当从OpenFlow交换机接收到数据帧时,提取用于识别与所述数据帧相关的域的域信息,查找与提取的域信息匹配的控制策略项,根据匹配的控制策略项中的关于QoS控制策略的数据对接收的数据帧进行QoS计算,并且确定将转发还是丢弃所述数据帧,针对接收的数据帧生成包括头域、计数器以及动作代码的流表项,所述头域是从接收的数据帧提取的域信息,所述计数器包括用于所述域的转发、接收以及丢弃的数据帧数量,将接收的数据帧连同生成的流表项发送回给OpenFlow交换机进行转发处理。
Description
技术领域
本申请涉及一种基于OpenFlow控制流数据的服务质量(QoS)的方法以及OpenFlow控制器,尤其涉及在OpenFlow控制器端根据其维护的QoS控制策略数据对流数据进行QoS计算,基于计算的结果生成流表项,并且将数据帧连同生成的流表项一同发送给OpenFlow交换机,从而在OpenFlow控制器端对流数据进行QoS控制。
背景技术
随着互联网的普及以及网络传输技术的提高,提供丰富多彩的多媒体内容的流服务已成为主要的互联网服务之一。具有实时特性的多媒体内容对网络传输时延、时延抖动等较为敏感。
在网络交换机端,可根据对特定传输流的QoS要求,进行带宽控制、丢包率控制、时延控制以及时延抖动控制等以提供QoS。
另一方面,美国斯坦福大学于2007年提出了一种称为OpenFlow的网络交换模型。OpenFlow交换机将原来完全由交换机/路由器控制的数据帧转发改为由OpenFlow交换机和OpenFlow控制器来共同完成,实现数据转发和路由控制的分离。
发明内容
本发明的目的在于提供一种基于OpenFlow控制流数据的服务质量(QoS)的方法以及OpenFlow控制器,在OpenFlow控制器端根据其维护的QoS控制策略对流数据进行QoS计算,基于计算的结果生成流表项,并且将数据帧连同生成的流表项一同发送给OpenFlow交换机,从而在OpenFlow控制器端集中控制流数据的QoS。
根据本发明的一方面,提供一种基于OpenFlow控制流数据的服务质量(QoS)的方法,包括,在OpenFlow控制器端,当从OpenFlow交换机接收到数据帧时,执行以下步骤:提取用于识别与所述数据帧相关的域的域信息;在QoS控制策略数据库中查找与提取的域信息匹配的控制策略项,所述QoS控制策略数据库的每个控制策略项包括域信息和关于QoS控制策略的数据;根据匹配的控制策略项中的关于QoS控制策略的数据对接收的数据帧进行QoS计算,并且确定将转发还是丢弃所述数据帧;针对接收的数据帧生成包括头域、计数器以及动作代码的流表项,所述头域是从接收的数据帧提取的域信息,所述计数器包括用于所述域的转发、接收以及丢弃的数据帧数量,所述动作代码用于指示OpenFlow交换机转发或丢弃所述数据帧;将接收的数据帧连同生成的流表项发送回给OpenFlow交换机进行转发处理。
所述域信息可包括源IP地址、源端口、目标IP地址、目标端口和协议号。
QoS控制策略可包括带宽控制、丢包控制、时延控制以及抖动控制中的至少一个以及相应的控制参数。
所述的方法可还包括:如果匹配的控制策略项中的关于QoS控制策略的数据指示时延控制或者抖动控制,则将接收的数据帧存储在缓存单元中以完成相应的时延或抖动操作,再将接收的数据帧连同生成的流表项发送回给OpenFlow交换机。
根据本发明的另一方面,提供一种OpenFlow控制器,包括:通信模块,用于从OpenFlow交换机接收数据帧,并且将所述数据帧连同QoS流表项发送给所述OpenFlow交换机进行转发处理;QoS数据库模块,用于存储包含多个控制策略项的QoS控制策略数据库,每个控制策略项包括域信息和关于QoS控制策略的数据;数据帧识别模块,用于从通信模块接收的数据帧提取用于识别与所述数据帧相关的域的域信息;域匹配模块,用于在QoS数据库模块存储的QoS控制策略数据库中查找与数据帧识别模块提取的域信息匹配的控制策略项;QoS操作模块,根据域匹配模块查找到的匹配的控制策略项中的关于QoS控制策略的数据对接收的数据帧进行QoS计算,针对所述接收的数据帧生成包括头域、计数器以及动作代码的流表项,并且通过通信模块将接收的数据帧连同生成的流表项发送给所述OpenFlow交换机,其中,所述头域是从接收的数据帧提取的域信息,所述计数器包括用于所述域的转发、接收以及丢弃的数据帧数量,所述动作代码用于指示OpenFlow交换机转发或丢弃所述数据帧。
所述域信息可包括源IP地址、源端口、目标IP地址、目标端口和协议号。
QoS控制策略可包括带宽控制、丢包控制、时延控制以及抖动控制中的至少一个以及相应的控制参数。
所述的OpenFlow控制器可还包括:缓存单元,如果匹配的控制策略项中的关于QoS控制策略的数据指示时延控制或者抖动控制,则QoS操作单元将接收的数据帧存储在缓存单元中以完成相应的时延或抖动操作,再通过通信单元发送接收的数据帧连同生成的流表项。
附图说明
通过下面结合附图进行的描述,本发明的上述和其他目的和特点将会变得更加清楚,其中:
图1是示出根据本发明的示例性实施例的OpenFlow控制器的结构的逻辑框图;
图2是示出根据本发明的示例性实施例的为流数据提供QoS的方法的流程图。
具体实施方式
以下,参照附图来详细说明本发明的实施例。
本发明的总体发明构思是,在OpenFlow架构中,OpenFlow交换机将每个通过网络接口接收的数据帧传送给OpenFlow控制器;OpenFlow控制器根据针对与接收的数据帧相关的域制定的QoS控制策略对接收的数据帧执行QoS计算,并且生成指示转发或丢弃的流表项,然后将接收的数据帧连同流表项发送给OpenFlow交换机执行转发处理。换句话说,本发明在OpenFlow控制器端实现对流数据的QoS控制。
图1示出根据本发明的OpenFlow控制器的结构。
参照图1,本发明的OpenFlow控制器包括通信模块110、数据帧识别模块120、域匹配模块130、QoS数据库模块140和QoS操作模块150。
通信模块110用于从OpenFlow交换机接收数据帧,并且将所述数据帧连同QoS流表项发送给所述OpenFlow交换机进行转发处理。
数据帧识别模块120用于从通信模块110接收的数据帧提取用于识别与所述数据帧相关的域的域信息。根据本发明的示例性实施例,所述域信息是源IP地址、源端口、目的IP地址、目的端口以及协议号。根据域、涉及网络的类型,所述域信息也可以是其他任何用于唯一标识特定域的信息。
QoS数据库模块140用于存储包含多个控制策略项的QoS控制策略数据库,每个控制策略项包括域信息和关于QoS控制策略的数据。所述关于QoS控制策略的数据包括至少一个QoS控制策略以及相应的控制参数。QoS控制策略包括带宽控制、丢包控制、时延控制以及抖动控制等。例如,所述控制策略类型可以是带宽控制,控制参数可以是0M~信道容许带宽的任意值(如10M);再例如,所述控制策略类型可以是丢包控制,控制参数可以是0%~100%之间的值(如10%)。
域匹配模块130使用数据帧识别模块120提取的域信息在QoS数据库模块140维护的QoS控制策略数据库中查找与提取的域信息匹配的控制策略项。QoS操作模块150根据匹配的控制策略项中的关于QoS控制策略的数据对接收的数据帧进行QoS计算,针对所述接收的数据帧生成包括头域、计数器以及动作代码的流表项,并且通过通信模块将接收的数据帧连同生成的流表项发送给所述OpenFlow交换机,其中,所述头域是从接收的数据帧提取的域信息,所述计数器包括用于所述域的转发、接收以及丢弃的数据帧数量,所述动作代码用于指示OpenFlow交换机转发或丢弃所述数据帧。QoS操作模块150为了执行流数据的QoS计算,也需要维护必要的QoS状态变量,如用于丢包控制的发送的数据帧数量、接收的数据帧数量以及丢弃的数据帧数量等。可使用现有的用于实现QoS控制策略的算法来进行本发明所述的QoS计算。
本发明的OpenFlow控制器可还包括缓存单元(未示出)。如果匹配的控制策略项中的关于QoS控制策略的数据指示时延控制或者抖动控制,则QoS操作单元150将接收的数据帧存储在缓存单元中以完成相应的时延或抖动操作,再通过通信单元110发送接收的数据帧连同生成的流表项。
如上所述,本发明的OpenFlow控制器可根据预设的QoS控制策略对来自OpenFlow交换机的数据帧进行QoS计算,并生成指示转发或丢弃的流表项,从而集中地控制流数据的QoS,并且将QoS与转发分离开。
图2示出根据本发明的示例性实施例的提供QoS的方法的流程图。
参照图2,在步骤S210,OpenFlow控制器从OpenFlow交换机接收到数据帧。
在步骤S220,OpenFlow控制器从接收的数据帧提取域信息。根据本发明的示例性实施例,所述域信息是源IP地址、源端口、目的IP地址、目的端口以及协议号。根据域、涉及网络的类型,所述域信息也可以是其他任何用于唯一标识特定域的信息。
在步骤S230,OpenFlow控制器在其维护的QoS控制策略数据库中查找与提取的域信息匹配的控制策略项,所述QoS控制策略数据库的每个控制策略项包括域信息以及关于QoS控制策略的数据。关于QoS控制策略的数据包括带宽控制、丢包控制、时延控制以及抖动控制中的至少一个以及相应的控制参数。在步骤S240,OpenFlow控制器根据匹配的控制策略项中的关于QoS控制策略的数据对接收的数据帧进行QoS计算,并且确定将转发还是丢弃所述数据帧。
在步骤S250,OpenFlow控制器针对接收的数据帧生成包括头域、计数器以及动作代码的流表项,所述头域是从接收的数据帧提取的域信息,所述计数器包括用于所述域的转发、接收以及丢弃的数据帧数量,所述动作代码用于指示OpenFlow交换机转发或丢弃所述数据帧。
在步骤S260,将接收的数据帧连同生成的流表项发送回给OpenFlow交换机进行转发处理。
根据本发明的优选实施例,如果在步骤S230中匹配的控制策略项中的关于QoS控制策略的数据指示时延控制或者抖动控制,则OpenFlow控制器将接收的数据帧存储在缓存单元中以完成相应的时延或抖动操作,再在步骤S260,将接收的数据帧连同生成的流表项发送回给OpenFlow交换机。
由此可见,根据本发明的基于OpenFlow控制流数据的QoS的方法以及使用所述方法的OpenFlow控制器可在将OpenFlow接收的数据帧根据预设的用于相关域的QoS控制策略进行QoS计算,并且对接收的数据帧进行QoS标注(转发或丢弃),从而在OpenFlow控制器集中地控制流数据的QoS,并且将QoS与转发分离开。
此外,本发明的基于OpenFlow控制流数据的QoS的方法以及使用所述方法的OpenFlow控制器通过控制实现精确的丢包率、时延等QoS参数,可对多媒体处理及信源编码算法的抗丢包性进行评估,以优化相关算法。
此外,本发明的基于OpenFlow控制流数据的QoS的方法以及使用所述方法的OpenFlow控制器可实现网络编码,模拟不同丢包率和时延及抖动的网络传输环境,以用于测试和评估网络编码策略。
尽管已参照优选实施例表示和描述了本发明,但本领域技术人员应该理解,在不脱离由权利要求限定的本发明的精神和范围的情况下,可以对这些实施例进行各种修改和变换。
Claims (4)
1.一种基于OpenFlow控制流数据的服务质量(QoS)的方法,包括,在OpenFlow控制器端,当从OpenFlow交换机接收到数据帧时,执行以下步骤:
提取用于识别与所述数据帧相关的域的域信息;
在QoS控制策略数据库中查找与提取的域信息匹配的控制策略项,所述QoS控制策略数据库的每个控制策略项包括域信息和关于QoS控制策略的数据,其中,QoS控制策略包括带宽控制、丢包控制、时延控制以及抖动控制中的至少一个以及相应的控制参数;
根据匹配的控制策略项中的关于QoS控制策略的数据对接收的数据帧进行QoS计算,并且确定将转发还是丢弃所述数据帧;
针对接收的数据帧生成包括头域、计数器以及动作代码的流表项,所述头域是从接收的数据帧提取的域信息,所述计数器包括用于所述域的转发、接收以及丢弃的数据帧数量,所述动作代码用于指示OpenFlow交换机转发或丢弃所述数据帧;
将接收的数据帧连同生成的流表项发送回给OpenFlow交换机进行转发处理;
如果匹配的控制策略项中的关于QoS控制策略的数据指示时延控制或者抖动控制,则将接收的数据帧存储在缓存单元中以完成相应的时延或抖动操作,再将接收的数据帧连同生成的流表项发送回给OpenFlow交换机。
2.如权利要求1所述的方法,其中,所述域信息包括源IP地址、源端口、目标IP地址、目标端口和协议号。
3.一种OpenFlow控制器,包括:
通信模块,用于从OpenFlow交换机接收数据帧,并且将所述数据帧连同QoS流表项发送给所述OpenFlow交换机进行转发处理;
QoS数据库模块,用于存储包含多个控制策略项的QoS控制策略数据库,每个控制策略项包括域信息和关于QoS控制策略的数据,其中,QoS控制策略包括带宽控制、丢包控制、时延控制以及抖动控制中的至少一个以及相应的控制参数;
数据帧识别模块,用于从通信模块接收的数据帧提取用于识别与所述数据帧相关的域的域信息;
域匹配模块,用于在QoS数据库模块存储的QoS控制策略数据库中查找与数据帧识别模块提取的域信息匹配的控制策略项;
QoS操作模块,根据域匹配模块查找到的匹配的控制策略项中的关于QoS控制策略的数据对接收的数据帧进行QoS计算,针对所述接收的数据帧生成包括头域、计数器以及动作代码的流表项,并且通过通信模块将接收的数据帧连同生成的流表项发送给所述OpenFlow交换机,其中,所述头域是从接收的数据帧提取的域信息,所述计数器包括用于所述域的转发、接收以及丢弃的数据帧数量,所述动作代码用于指示OpenFlow交换机转发或丢弃所述数据帧;
缓存模块,如果匹配的控制策略项中的关于QoS控制策略的数据指示时延控制或者抖动控制,则QoS操作模块将接收的数据帧存储在缓存模块中以完成相应的时延或抖动操作,再通过通信模块发送接收的数据帧连同生成的流表项。
4.如权利要求3所述的OpenFlow控制器,其中,所述域信息包括源IP地址、源端口、目标IP地址、目标端口和协议号。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210334920.8A CN103685058B (zh) | 2012-09-11 | 2012-09-11 | 控制流数据的服务质量的方法和OpenFlow控制器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210334920.8A CN103685058B (zh) | 2012-09-11 | 2012-09-11 | 控制流数据的服务质量的方法和OpenFlow控制器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103685058A CN103685058A (zh) | 2014-03-26 |
CN103685058B true CN103685058B (zh) | 2017-05-17 |
Family
ID=50321412
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210334920.8A Expired - Fee Related CN103685058B (zh) | 2012-09-11 | 2012-09-11 | 控制流数据的服务质量的方法和OpenFlow控制器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103685058B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106105098B (zh) * | 2014-09-25 | 2019-05-31 | 华为技术有限公司 | 交换机及业务请求报文的处理方法 |
CN105812278B (zh) * | 2014-12-31 | 2019-06-18 | 华为技术有限公司 | 软件定义网络中服务质量控制方法及装置 |
EP3261304B1 (en) | 2015-03-18 | 2022-04-20 | Huawei Technologies Co., Ltd. | Method and apparatus for performing communication in software-defined networking, and communications system |
CN105490962B (zh) * | 2015-12-04 | 2018-10-26 | 哈尔滨工程大学 | 一种基于OpenFlow网络的QoS管理方法 |
CN106130769A (zh) * | 2016-06-30 | 2016-11-16 | 上海斐讯数据通信技术有限公司 | 一种基于sdn的网络质量分析方法及sdn系统 |
CN110704480A (zh) * | 2018-06-21 | 2020-01-17 | 马上消费金融股份有限公司 | 一种流式数据处理方法、系统及一种电子设备和存储介质 |
US11297530B2 (en) * | 2018-11-02 | 2022-04-05 | Huawei Technologies Co., Ltd. | Method and system for using policy to handle packets |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101009631A (zh) * | 2006-01-24 | 2007-08-01 | 华为技术有限公司 | 一种QoS控制方法和系统 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100433715C (zh) * | 2005-08-19 | 2008-11-12 | 华为技术有限公司 | 给数据流提供不同的服务质量策略的方法 |
CN101072118A (zh) * | 2006-05-10 | 2007-11-14 | 中兴通讯股份有限公司 | 家庭网络服务质量策略管理的系统和方法 |
-
2012
- 2012-09-11 CN CN201210334920.8A patent/CN103685058B/zh not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101009631A (zh) * | 2006-01-24 | 2007-08-01 | 华为技术有限公司 | 一种QoS控制方法和系统 |
Non-Patent Citations (2)
Title |
---|
IPv6下基于openflow技术的QoS管理系统的设计;孙梦;《中国优秀硕士学位论文全文数据库》;20120715;正文第16-18页 * |
OpenFlow: Enabling Innovation in Campus Networks;Nick Mckeown、等;《ACM SIGCOMM Computer communication review》;20080430;第38卷(第2期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN103685058A (zh) | 2014-03-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103685058B (zh) | 控制流数据的服务质量的方法和OpenFlow控制器 | |
CN105553880B (zh) | 一种软件定义网络中的数据处理方法及装置 | |
CN104769884B (zh) | 利用流数据的转发表优化 | |
EP2544417A1 (en) | Communication system, path control apparatus, packet forwarding apparatus and path control method | |
CN104283785B (zh) | 一种快速处理流表的方法和装置 | |
CN105024985B (zh) | 一种报文处理方法及装置 | |
CN105099913B (zh) | 一种报文转发方法及设备 | |
CN102104541A (zh) | 报头处理引擎 | |
CN102884769A (zh) | 通信系统、节点、控制设备、通信方法以及程序 | |
WO2018036100A1 (zh) | 一种数据报文转发的方法及装置 | |
EP3111603B1 (en) | Method and network device for handling packets in a network by means of forwarding tables | |
CN105791169A (zh) | 软件定义网络中交换机转发控制、转发方法及相关设备 | |
TW201110622A (en) | Method and system for energy-efficiency-based packet classification | |
CN105247831A (zh) | 流表修改方法、流表修改装置和开放流网络系统 | |
CN107276916B (zh) | 基于协议无感知转发技术的交换机流表管理方法 | |
EP2879335A1 (en) | Control device, communication system, communication method and program | |
CN105959219A (zh) | 数据处理方法和装置 | |
CN103283189A (zh) | 通信系统和通信方法 | |
CN107566267A (zh) | 一种基于聚合链路的报文转发方法和装置 | |
CN105359472A (zh) | 一种用于OpenFlow网络的数据处理方法和装置 | |
Ha et al. | Efficient flow table management scheme in SDN-based cloud computing networks | |
US9189218B2 (en) | Processing packets by generating machine code from pre-compiled code fragments | |
WO2012081721A1 (ja) | 通信システム、ノード、パケット転送方法およびプログラム | |
CN101272347A (zh) | 负载分担的方法和设备 | |
CN107809385B (zh) | 一种Packet-In消息的触发与控制方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20170517 Termination date: 20170911 |
|
CF01 | Termination of patent right due to non-payment of annual fee |