CN104283805B - 一种sdn网络报文发送方法及设备 - Google Patents
一种sdn网络报文发送方法及设备 Download PDFInfo
- Publication number
- CN104283805B CN104283805B CN201410581537.1A CN201410581537A CN104283805B CN 104283805 B CN104283805 B CN 104283805B CN 201410581537 A CN201410581537 A CN 201410581537A CN 104283805 B CN104283805 B CN 104283805B
- Authority
- CN
- China
- Prior art keywords
- bandwidth
- sent
- message flow
- shunting
- list item
- 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.)
- Active
Links
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种SDN网络报文发送方法,该方法包括:SDN控制器接收SDN交换设备发来的携带待发送报文流带宽的分流表项请求报文,待发送报文流的优先级大于优先级阈值;分配一个额定带宽不小于待发送报文流带宽的专用出端口作为待发送报文流的匹配专用出端口;为待发送报文流创建分流表项,并将分流表项与匹配专用出端口携带于分流表项应答报文中发送给SDN交换设备,使得SDN交换设备根据分流表项将待发送报文流进行分流,并通过匹配专用出端口进行发送。
Description
技术领域
本发明涉及通信技术领域,特别是涉及一种SDN网络报文发送方法及设备。
背景技术
SDN网络(Software Defined Network,软件定义网络)通常由SDN交换设备(Switch)和SDN控制器(Controller)组成。其中,SDN控制器是控制中心,根据用户的配置或者动态运行的协议生成流表发送到SDN交换设备。SDN交换设备接收SDN控制器下发的流表,并根据流表进行报文处理,向SDN控制器上报设备的状态和事件,如接口UP/DOWN。在SDN交换设备和SDN控制器之间通过SDN通道(基于传输控制协议TCP或者安全套接层SSL)进行通信。
负载分担技术应用范围广泛,在网络领域,通过对报文流量进行分流来实现负载分担。目前,SDN网络中SDN交换设备对接收到的报文流基于负载分担原则进行流量分流的实现方案为,在SDN交换设备上配置至少一条不同的ACL(访问控制列表,Access ControlList)匹配不同的报文流,SDN交换设备接收到报文流后,根据报文流的五元组(源/目的IP、源/目的端口号、协议类型)或其他报文头信息与ACL进行匹配,使得SDN交换设备接收到的至少一条报文流分别匹配不同的ACL,进入出端口不同的队列,实现报文流的分流,完成对出端口发送队列的负载分担。如图1所示,SDN交换设备上配置4条不同的ACL:ACL1、ACL2、ACL3和ACL4,该SDN交换设备接收到4条不同的报文流:X1、X2、X3和X4,这4条报文流分别匹配4条不同的ACL,假设X1匹配ACL1,X2匹配ACL2,X3匹配ACL3,X4匹配ACL4,则报文流X1进入队列1,报文流X2进入队列2,报文流X3进入队列3,报文流X4进入队列4,通过报文流匹配ACL实现了待发送报文分流,完成对接口R2的出端口发送队列进行负载分担。
但是,由于同一条报文流的报文头信息是一样的,所以使用ACL来匹配报文流进行分流,只能对不同的报文流进行分流,无法完成对同一条报文流进行分流的任务。例如,假设图1中SDN交换设备仅接收到报文流X1,根据ACL匹配原则,报文流X1匹配ACL1,进入队列1进行发送,对于SDN交换设备来说,并没有实现报文分流,也就没有实现出端口发送队列的负载分担。
发明内容
有鉴于此,本发明提出了一种SDN网络报文发送方法及设备,有效解决了现有方案中无法对同一条报文流进行分流发送的缺陷。
本发明提出的技术方案是:
一种SDN网络报文发送方法,该方法包括:
SDN控制器接收SDN交换设备发来的携带待发送报文流带宽的分流表项请求报文,待发送报文流的优先级大于优先级阈值;
分配一个额定带宽不小于待发送报文流带宽的专用出端口作为待发送报文流的匹配专用出端口;
为待发送报文流创建分流表项,并将分流表项与匹配专用出端口携带于分流表项应答报文中发送给SDN交换设备,使得SDN交换设备根据分流表项将待发送报文流进行分流,并通过匹配专用出端口进行发送。
一种SDN网络报文发送方法,该方法包括:
SDN交换设备接收优先级大于优先级阈值的待发送报文流,计算待发送报文流带宽,将带宽携带于分流表项请求报文中发送给SDN控制器,使得SDN控制器为待发送报文流分配匹配专用出端口并创建分流表项;
接收SDN控制器发送的携带匹配专用出端口和分流表项的分流表项应答报文;
将待发送报文流根据分流表项进行分流得到子报文流,并将子报文流通过匹配专用出端口进行发送。
一种SDN控制器,该SDN控制器包括:
接收模块,用于接收SDN交换设备发来的携带待发送报文流带宽的分流表项请求报文,待发送报文流的优先级大于优先级阈值;
端口分配模块,用于分配一个额定带宽不小于待发送报文流带宽的专用出端口作为待发送报文流的匹配专用出端口;
表项创建模块,用于为待发送报文流创建分流表项;
发送模块,用于将分流表项与匹配专用出端口携带于分流表项应答报文中发送给SDN交换设备,使得SDN交换设备根据分流表项将待发送报文流进行分流,并通过匹配专用出端口进行发送。
一种SDN交换设备,该设备包括:
接收模块,用于接收优先级大于优先级阈值的待发送报文流;
计算模块,用于计算待发送报文流带宽;
发送模块,用于将带宽携带于分流表项请求报文中发送给SDN控制器,使得SDN控制器为待发送报文流分配匹配专用出端口并创建分流表项;
接收模块,用于接收SDN控制器发送的携带匹配专用出端口和分流表项的分流表项应答报文;
分流模块,用于将待发送报文流根据分流表项进行分流得到子报文流;
发送模块还用于,通过匹配专用出端口发送子报文流。
综上,本发明提出了一种SDN网络报文发送方法及设备,在该方法中,SDN交换设备将优先级大于优先级阈值的待发送报文流与匹配的分流表项中降序排列的每一级分流带宽进行比较,按照分流带宽内流量通过、分流带宽外流量修改非五元组报文头信息并通过进行报文处理,将同一报文流分成N条子报文流分别进入匹配专用出端口不同的队列进行发送,实现了对同一条优先级大于优先级阈值的报文流在专用出端口发送队列的负载分担,其中N为分配给优先级大于优先级阈值的报文流的专用出端口的发送队列数。
附图说明
图1为现有技术SDN网络报文分流原理图;
图2为本发明技术方案流程图;
图3为本发明SDN网络报文分流原理图;
图4为本发明实施例流程图;
图5为本发明实施例的SDN控制器结构图。
图6为本发明实施例的SDN交换设备结构图。
具体实施方式
现有技术通过在SDN交换设备上配置至少一条ACL匹配不同的报文流,实现SDN交换设备接收至少一条报文流时分别根据报文头信息匹配不同的ACL,进入不同的出端口发送队列,实现报文分流,完成对出端口发送队列的负载分担。由于同一条报文流的报文头信息(源/目的IP、源/目的端口号、协议类型、服务类型ToS、差分服务编码点DSCP等)是相同的,现有技术如不作任何改进,不能根据ACL对同一条报文流进行分流。
基于此,本发明提出一种SDN网络报文发送方法,SDN控制器为优先级大于优先级阈值的待发送报文流分配一个匹配专用出端口,并为该优先级大于优先级阈值的待发送报文流创建分流表项,使得该优先级大于优先级阈值的待发送报文流与该分流表项包含的每一级分流带宽进行比较,执行分流带宽内流量通过、分流带宽外流量修改非五元组报文头信息并通过的报文处理,将该优先级大于优先级阈值的待发送报文流分成N个非五元组报文头信息互不相同的子报文流,然后将这N个子报文流分别根据ACL匹配策略通过匹配专用出端口的N个不同发送队列进行发送,实现出端口发送队列负载分担的功能。
对于每一个SDN交换设备,都有至少一个出端口,SDN控制器为每一个SDN交换设备指定至少一个出端口作为专用出端口,并根据专用出端口的额定带宽为该专用出端口设置N个发送队列,每个发送队列的额定带宽相等,N个发送队列的额定带宽之和为该专用出端口的额定带宽。SDN交换设备的专用出端口用来发送优先级大于优先级阈值的报文流。
本发明实施例的技术方案是:
如图2所示,本发明一种SDN网络报文发送方法应用于SDN控制器上,对于SDN控制器,执行以下步骤:
步骤201:SDN控制器接收SDN交换设备发来的携带待发送报文流带宽的分流表项请求报文,待发送报文流的优先级大于优先级阈值。
步骤202:SDN控制器分配一个额定带宽不小于待发送报文流带宽的专用出端口作为待发送报文流的匹配专用出端口。
其中,匹配专用出端口包含N个发送队列,且每个发送队列的额定带宽相同。
步骤203:SDN控制器为待发送报文流创建分流表项,并将分流表项与匹配专用出端口携带于分流表项应答报文中发送给SDN交换设备,使得SDN交换设备根据分流表项将待发送报文流进行分流,并通过匹配专用出端口进行发送。
其中,SDN控制器创建分流表项的方法为:
SDN控制器创建一个包含N-1级分流带宽的分流表项,每级分流带宽的动作为分流带宽内流量通过、分流带宽外流量修改非五元组报文头信息并通过,分流表项的N-1级分流带宽用于将待发送报文流总共分流成N个非五元组报文头信息各不相同的子报文流;
并且,分流表项的N-1级分流带宽同时满足以下条件:N-1级分流带宽依次降序排列,任意相邻两级分流带宽的差值不大于匹配专用出端口每个发送队列的额定带宽,第一级分流带宽小于待发送报文流带宽,待发送报文流带宽与第一级分流带宽之差不大于匹配专用出端口每个发送队列的额定带宽,最后一级分流带宽不大于匹配专用出端口每个发送队列的额定带宽。
这里,SDN创建分流表项时,关于每级分流带宽修改分流带宽外流量的非五元组报文头信息的动作,有如下限制条件:每一级分流带宽修改的分流带宽外流量非五元组报文头信息互不相同,且与待发送报文流未修改前的非五元组报文头信息不同,具体实现方法有多种,在此不再一一列举,只需满足上述条件即可。
SDN控制器创建好分流表项以后,进一步根据创建的分流表项以及待发送报文流未经修改的非五元组报文头信息创建ACL表项,这里ACL表项是存储非五元组报文头信息与发送队列一一对应关系的表项,能够使得分流后的子报文流根据各自非五元组报文头信息查询匹配的ACL表项,通过匹配的ACL表项的发送队列进行发送。
SDN交换设备接收到SDN控制器发送的分流表项应答报文后,根据分流表项应答报文携带的分流表项对待发送报文流进行分流,具体实现方法为:
SDN交换设备将待发送报文流与分流表项的第一级分流带宽进行比较,这里的第一级分流带宽是分流表项降序排列的第一级分流带宽;
修改本级分流带宽外的待发送报文流的非五元组报文头信息;
将本级分流带宽内的待发送报文流与分流表项的下一级分流带宽进行比较;
返回执行修改本级分流带宽外的待发送报文流的非五元组报文头信息的步骤,直至待发送报文流与分流表项的最后一级分流带宽进行比较,修改最后一级分流带宽外的待发送报文流的非五元组报文头信息,保持最后一级分流带宽内的流量的非五元组报文头信息。
通过上述方法,SDN交换设备将待发送报文流分流为N个非五元组报文头信息互不相同的子报文流,之后根据分流表项应答报文携带的ACL表项进行子报文流的发送。
这里,非五元组报文头信息可以是报文流的差分服务编码点(DSCP,Differentiated Services Code Point),或者报文流的服务类型(ToS,Type ofService),在此不再一一列举。
通过上述方法,SDN交换设备将接收到的同一条报文流分流成N条非五元组报文头信息互不相同的子报文流。如图3所示,SDN交换设备接收到一条报文流Y,将报文流Y的非五元组报文头信息用A表示,SDN控制器为报文流Y创建的分流表项包含N-1级分流带宽,分别为Band1、Band2、…、Band N-1,每级分流带宽的动作为分流带宽内流量通过,分流带宽外流量修改非五元组报文头信息并通过,报文流Y分别与上述N-1级分流带宽进行比较,被分流成子报文流Y(1)、Y(2)、…、Y(N)共N条子报文流,且上述N条子报文流的非五元组报文头信息各不相同,图中用A1、A2、…、An-1、A进行区分。分流得到的N条子报文流分别通过ACL匹配策略进入匹配专用出端口的不同发送队列进行发送,实现了出端口发送队列的负载分担。
下面结合具体实施例对上述实现SDN网络报文分流的方法进行详细说明。
目前,SDN技术中最为流行的是OpenFlow协议,以下将以OpenFlow进行举例进行说明,需要说明的是,本申请并不排除其他能够实现SDN功能的协议。
本实施例假设OpenFlow设备(Switch)上有五个出端口,分别是端口1(150M)、端口2(800M)、端口3(300M)、端口4(220M)和端口5(400M)。OpenFlow控制器(Controller)将端口2和端口5设置为专用出端口,并将端口2划分为8个发送队列,每个发送队列的额定带宽为100M,将端口5划分为8个发送队列,每个发送队列的额定带宽为50M。本实施例以Switch设备接收到高优先级报文流A(DSCP=9)、对报文流A进行分流发送为例对本发明技术方案进行说明,图4为本发明实施例的流程图,如图4所示,包括以下步骤:
步骤401:Switch设备接收报文流A,计算报文流A的带宽,将计算得到的带宽携带于分流表项请求报文中发送给Controller。
本步骤中,Switch设备接收到报文流A,计算报文流A的带宽,假设本实施例中报文流A的带宽为350M,Switch设备将报文流A的带宽值携带于分流表项请求报文中发送给控制器,请求Controller为报文流A分配匹配专用出端口,并创建分流表项。
步骤402:Controller接收分流表项请求报文,为报文流A分配一个出端口额定带宽不小于报文流A的带宽的专用出端口为报文流A的匹配专用出端口,创建分流表项,根据创建的分流表项修改的DSCP和报文流A未经修改的DSCP创建ACL表项,将分配给报文流A的匹配专用出端口以及创建的分流表项、ACL表项携带于分流表项应答报文中发送给Switch。
本步骤中,Controller接收到的分流表项请求报文中携带的报文流A的带宽为350M,目前专用出端口有端口2和端口5,其中端口2的额定带宽为800M,端口5的额定带宽为400M,均大于报文流A的带宽,则从中选择一个专用出端口分配给报文流A,假设选择端口5。
端口5被划分为8个发送队列,因此Controller为报文流A创建一个包含7级分流带宽的分流表项,7级分流带宽同时满足以下条件:7级分流带宽依次降序排列,任意相邻两级分流带宽的差值不大于端口2每个发送队列的额定带宽,第一级分流带宽小于报文流A的带宽,报文流A的带宽与第一级分流带宽之差不大于端口2每个发送队列的额定带宽,最后一级分流带宽不大于端口2每个发送队列的额定带宽。基于上述条件,假设Controller为报文流A创建的分流表项如表1所示。
表1
对分流带宽外流量修改DSCP值时,只需保证每一级分流带宽修改得到的DSCP值各不相同即可,实现方法有多种,例如从得到的第一个子报文流开始DSCP值依次减1,或者依次加1,在此对修改子报文流的DSCP值的方法不做限定。
分流表项创建好后,Controller依据分流表项修改的DSCP以及报文流A未经修改的DSCP为端口2的每个发送队列配置一条ACL,用于指导子报文流从对应的发送队列中发送出去。创建的ACL表项如表2所示。
表2
队列 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 |
DSCP | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 9 |
之后,Controller将表1所示的分流表项、表2所示的ACL表项、以及为报文流A分配的专用出端口端口2携带于分流表项应答报文中发送给Switch设备。
步骤403:Switch设备接收分流表项应答报文,将报文流A依次与分流表项应答报文中携带的分流表项每一级分流带宽进行比较,按照每一级分流带宽的动作将报文流A分流为DSCP值各不相同的子报文流。
本步骤中,报文流A为350M。Switch将报文流A依次与分流表项的每一级分流带宽进行比较并处理的过程为:
Switch设备将350M(DSCP=9)报文流A与第1级分流带宽进行比较,将40M的分流带宽外流量DSCP值修改为8,将310M(DSCP=9)的第1级分流带宽内流量与第2级分流带宽进行比较,50M的分流带宽外流量DSCP值修改为7,260M(DSCP=9)的第2级分流带宽内流量与第3级分流带宽进行比较,50M的分流带宽外流量DSCP值修改为6,210M(DSCP=9)的第3级分流带宽内流量与第4级分流带宽进行比较,50M的分流带宽外流量DSCP值修改为5,160M(DSCP=9)的第4级分流带宽内流量与第5级分流带宽进行比较,40M的分流带宽外流量DSCP值修改为4,120M(DSCP=9)的第5级分流带宽内流量与第6级分流带宽进行比较,40M的分流带宽外流量DSCP值修改为3,80M(DSCP=9)的第6级分流带宽内流量与第7级分流带宽进行比较,40M的分流带宽外流量DSCP值修改为2,40M(DSCP=9)的第7级分流带宽内流量直接通过。
经过上述流量处理,Switch将350M报文流A分流成了以下8个DSCP值各不相同的子报文流:
40M(DSCP=8);
50M(DSCP=7);
50M(DSCP=6);
50M(DSCP=5);
40M(DSCP=4);
40M(DSCP=3);
40M(DSCP=2);
40M(DSCP=9)。
步骤404:Switch设备将得到的子报文流通过匹配ACL表项分别通过匹配专用出端口不同的发送队列发送。
步骤403中Switch将报文流A分流成了8条DSCP各不相同的子报文流,将这8条子报文流与表2所示的ACL表项进行匹配,DSCP=8的子报文流通过发送队列1进行发送,DSCP=7的子报文流通过发送队列2进行发送,DSCP=6的子报文流通过发送队列3进行发送,DSCP=5的子报文流通过发送队列4进行发送,DSCP=4的子报文流通过发送队列5进行发送,DSCP=3的子报文流通过发送队列6进行发送,DSCP=2的子报文流通过发送队列7进行发送,DSCP=9的子报文流通过发送队列8进行发送。
至此,350M的报文流A经过分流表项进行分流后,分别得到8条DSCP值各不相同的子报文流,将这分流得到的8条子报文流分别进入专用出端口不同的队列进行发送,实现了同一条报文流的分流以及出端口发送队列的负载分担。
本发明实施例具有以下有益技术效果:
OpenFlow设备将待发送报文流依次与OpenFlow控制器下发的分流表项包含的降序排列的每一级分流带宽进行比较,按照分流带宽内流量通过、分流带宽外流量修改DSCP值并通过进行报文分流,得到N条DSCP值各不相同的子报文流,然后根据ACL匹配策略分别进入专用出端口不同的发送队列,实现出端口发送队列的负载分担。
针对上述方法,本发明还公开一种SDN控制器,图5为本发明SDN控制器的结构图,如图5所示,该SDN控制器包括:
接收模块501,用于接收SDN交换设备发来的携带待发送报文流带宽的分流表项请求报文,待发送报文流的优先级大于优先级阈值。
端口分配模块502,用于分配一个额定带宽不小于待发送报文流带宽的专用出端口作为待发送报文流的匹配专用出端口。
表项创建模块503,用于为待发送报文流创建分流表项。
发送模块504,用于将分流表项与匹配专用出端口携带于分流表项应答报文中发送给SDN交换设备,使得SDN交换设备根据分流表项将待发送报文流进行分流,并通过匹配专用出端口进行发送。
端口分配模块502为待发送报文流分配的匹配专用出端口包含N个发送队列,且每个发送队列的额定带宽相同。
表项创建模块503创建分流表项时进一步用于,
创建一个包含N-1级分流带宽的分流表项,每级分流带宽的动作为分流带宽内流量通过、分流带宽外流量修改非五元组报文头信息并通过,分流表项的N-1级分流带宽用于将待发送报文流总共分流成N个非五元组信息各不相同的子报文流;
分流表项的N-1级分流带宽依次降序排列,任意相邻两级分流带宽的差值不大于每个发送队列的额定带宽,第一级分流带宽小于待发送报文流带宽,待发送报文流带宽与第一级分流带宽之差不大于每个发送队列的额定带宽,最后一级分流带宽不大于每个发送队列的额定带宽。
表项创建模块503进一步用于:
根据分流表项以及待发送报文流未经修改的非五元组报文头信息创建访问控制列表ACL表项,ACL表项是存储非五元组报文头信息与发送队列一一对应关系的表项,使得分流后的子报文流根据非五元组报文头信息进入对应的发送队列进行发送。
针对上述方法,本发明还公开一种SDN交换设备,图6为本发明SDN交换设备的结构图,如图6所示,该SDN交换设备包括:
接收模块610,用于接收优先级大于优先级阈值的待发送报文流。
计算模块620,用于计算待发送报文流带宽。
发送模块630,用于将带宽携带于分流表项请求报文中发送给SDN控制器,使得SDN控制器为待发送报文流分配匹配专用出端口并创建分流表项。
接收模块610还用于,接收SDN控制器发送的携带匹配专用出端口和分流表项的分流表项应答报文。
分流模块640,用于将待发送报文流根据分流表项进行分流得到子报文流。
发送模块630还用于,通过匹配专用出端口发送子报文流。
接收模块610接收的分流表项包含N-1级分流带宽并按降序排列,N为匹配专用出端口包含的发送队列数,每个发送队列的额定带宽相同。
分流模块640进一步包括:
带宽比较子模块641,用于将待发送报文流与分流表项的第一级分流带宽进行比较,第一级分流带宽是分流表项降序排列的第一级分流带宽;
信息修改子模块642,用于修改本级分流带宽外的待发送报文流的非五元组报文头信息;
带宽比较子模块641还用于,将本级分流带宽内的待发送报文流与分流表项的下一级分流带宽进行比较。
接收模块610还用于,接收SDN控制器为待发送报文流创建的ACL表项,ACL表项是存储非五元组报文头信息与发送队列一一对应关系的表项。
发送模块630进一步用于,根据子报文流的非五元组报文头信息查询ACL表项,根据匹配的ACL表项的发送队列发送子报文流。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
Claims (16)
1.一种SDN网络报文发送方法,其特征在于,该方法包括:
SDN控制器接收SDN交换设备发来的携带待发送报文流带宽的分流表项请求报文,所述待发送报文流的优先级大于优先级阈值;
分配一个额定带宽不小于所述待发送报文流带宽的专用出端口作为所述待发送报文流的匹配专用出端口;
根据非五元组报文头信息为所述待发送报文流创建分流表项,并将所述分流表项与所述匹配专用出端口携带于分流表项应答报文中发送给所述SDN交换设备,使得所述SDN交换设备根据所述分流表项将所述待发送报文流进行分流得到子报文流,并分别通过所述匹配专用出端口不同的队列进行发送。
2.根据权利要求1所述的方法,其特征在于,所述匹配专用出端口包含N个发送队列,且每个发送队列的额定带宽相同。
3.根据权利要求1或2所述的方法,其特征在于,所述为所述待发送报文流创建分流表项,具体包括以下步骤:
所述SDN控制器创建一个包含N-1级分流带宽的分流表项,每级分流带宽的动作为分流带宽内流量通过、分流带宽外流量修改非五元组报文头信息并通过,所述N-1级分流带宽用于将所述待发送报文流总共分流成N个非五元组信息各不相同的子报文流;
所述N-1级分流带宽依次降序排列,任意相邻两级分流带宽的差值不大于所述每个发送队列的额定带宽,第一级分流带宽小于所述待发送报文流带宽,所述待发送报文流带宽与第一级分流带宽之差不大于所述每个发送队列的额定带宽,最后一级分流带宽不大于所述每个发送队列的额定带宽。
4.根据权利要求3所述的方法,其特征在于,该方法进一步包括:
所述SDN控制器根据所述分流表项以及所述待发送报文流未经修改的非五元组报文头信息创建访问控制列表ACL表项,所述ACL表项是存储非五元组报文头信息与发送队列一一对应关系的表项,使得分流后的子报文流根据非五元组报文头信息进入对应的发送队列进行发送。
5.一种SDN网络报文发送方法,其特征在于,该方法包括:
SDN交换设备接收优先级大于优先级阈值的待发送报文流,计算所述待发送报文流带宽,将所述带宽携带于分流表项请求报文中发送给SDN控制器,使得SDN控制器为所述待发送报文流分配匹配专用出端口,并根据非五元组报文头信息创建分流表项;
接收所述SDN控制器发送的携带所述匹配专用出端口和所述分流表项的分流表项应答报文;
将所述待发送报文流根据所述分流表项进行分流得到子报文流,并将子报文流分别通过所述匹配专用出端口不同的队列进行发送。
6.根据权利要求5所述的方法,其特征在于,所述分流表项包含N-1级分流带宽并按降序排列,所述N为所述匹配专用出端口包含的发送队列数,每个发送队列的额定带宽相同。
7.根据权利要求5或6所述的方法,其特征在于,所述将所述待发送报文流根据所述分流表项进行分流,具体包括以下步骤:
所述SDN交换设备将待发送报文流与所述分流表项的第一级分流带宽进行比较,所述第一级分流带宽是所述分流表项降序排列的第一级分流带宽;
修改本级分流带宽外的待发送报文流的非五元组报文头信息;
将本级分流带宽内的待发送报文流与所述分流表项的下一级分流带宽进行比较;
返回执行修改本级分流带宽外的待发送报文流的非五元组报文头信息的步骤,直至待发送报文流与所述分流表项的最后一级分流带宽进行比较,修改最后一级分流带宽外的待发送报文流的非五元组报文头信息。
8.根据权利要求5所述的方法,其特征在于,该方法进一步包括:
所述SDN交换设备还接收到SDN控制器为所述待发送报文流创建的ACL表项,所述ACL表项是存储非五元组报文头信息与发送队列一一对应关系的表项;
所述通过所述匹配专用出端口进行发送,具体包括以下步骤:
SDN交换设备根据所述子报文流的非五元组报文头信息查询所述ACL表项,根据匹配的ACL表项的发送队列发送所述子报文流。
9.一种SDN控制器,其特征在于,该控制器包括:
接收模块,用于接收SDN交换设备发来的携带待发送报文流带宽的分流表项请求报文,所述待发送报文流的优先级大于优先级阈值;
端口分配模块,用于分配一个额定带宽不小于所述待发送报文流带宽的专用出端口作为所述待发送报文流的匹配专用出端口;
表项创建模块,用于根据非五元组报文头信息为所述待发送报文流创建分流表项;
发送模块,用于将所述分流表项与所述匹配专用出端口携带于分流表项应答报文中发送给所述SDN交换设备,使得所述SDN交换设备根据所述分流表项将所述待发送报文流进行分流得到子报文流,并分别通过所述匹配专用出端口不同的队列进行发送。
10.根据权利要求9所述的控制器,其特征在于,所述端口分配模块为所述待发送报文流分配的匹配专用出端口包含N个发送队列,且每个发送队列的额定带宽相同。
11.根据权利要求9或10所述的控制器,其特征在于,所述表项创建模块创建分流表项时进一步用于,
创建一个包含N-1级分流带宽的分流表项,每级分流带宽的动作为分流带宽内流量通过、分流带宽外流量修改非五元组报文头信息并通过,所述N-1级分流带宽用于将所述待发送报文流总共分流成N个非五元组信息各不相同的子报文流;
所述N-1级分流带宽依次降序排列,任意相邻两级分流带宽的差值不大于所述每个发送队列的额定带宽,第一级分流带宽小于所述待发送报文流带宽,所述待发送报文流带宽与第一级分流带宽之差不大于所述每个发送队列的额定带宽,最后一级分流带宽不大于所述每个发送队列的额定带宽。
12.根据权利要求11所述的控制器,其特征在于,所述表项创建模块进一步用于:
根据所述分流表项以及所述待发送报文流未经修改的非五元组报文头信息创建访问控制列表ACL表项,所述ACL表项是存储非五元组报文头信息与发送队列一一对应关系的表项,使得分流后的子报文流根据非五元组报文头信息进入对应的发送队列进行发送。
13.一种SDN交换设备,其特征在于,该设备包括:
接收模块,用于接收优先级大于优先级阈值的待发送报文流;
计算模块,用于计算所述待发送报文流带宽;
发送模块,用于将所述带宽携带于分流表项请求报文中发送给SDN控制器,使得SDN控制器为所述待发送报文流分配匹配专用出端口,并根据非五元组报文头信息创建分流表项;
接收模块,用于接收所述SDN控制器发送的携带所述匹配专用出端口和所述分流表项的分流表项应答报文;
分流模块,用于将所述待发送报文流根据所述分流表项进行分流得到子报文流;
所述发送模块还用于,分别通过所述匹配专用出端口不同的队列发送所述子报文流。
14.根据权利要求13所述的设备,其特征在于,所述接收模块接收的分流表项包含N-1级分流带宽并按降序排列,所述N为所述匹配专用出端口包含的发送队列数,每个发送队列的额定带宽相同。
15.根据权利要求13或14所述的设备,其特征在于,所述分流模块进一步包括:
带宽比较子模块,用于将待发送报文流与所述分流表项的第一级分流带宽进行比较,所述第一级分流带宽是所述分流表项降序排列的第一级分流带宽;
信息修改子模块,用于修改本级分流带宽外的待发送报文流的非五元组报文头信息;
所述带宽比较子模块还用于,将本级分流带宽内的待发送报文流与所述分流表项的下一级分流带宽进行比较。
16.根据权利要求13所述的设备,其特征在于,所述接收模块还用于,接收SDN控制器为所述待发送报文流创建的ACL表项,所述ACL表项是存储非五元组报文头信息与发送队列一一对应关系的表项;
所述发送模块进一步用于,根据所述子报文流的非五元组报文头信息查询所述ACL表项,根据匹配的ACL表项的发送队列发送所述子报文流。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410581537.1A CN104283805B (zh) | 2014-10-27 | 2014-10-27 | 一种sdn网络报文发送方法及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410581537.1A CN104283805B (zh) | 2014-10-27 | 2014-10-27 | 一种sdn网络报文发送方法及设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104283805A CN104283805A (zh) | 2015-01-14 |
CN104283805B true CN104283805B (zh) | 2017-11-10 |
Family
ID=52258302
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410581537.1A Active CN104283805B (zh) | 2014-10-27 | 2014-10-27 | 一种sdn网络报文发送方法及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104283805B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107135166B (zh) * | 2017-04-07 | 2021-12-31 | 深圳市华迅光通信有限公司 | 一种流量管理系统及方法 |
CN112367277B (zh) * | 2020-10-30 | 2022-03-29 | 新华三大数据技术有限公司 | 一种报文处理方法及装置 |
CN114567603A (zh) * | 2021-12-29 | 2022-05-31 | 云洲(盐城)创新科技有限公司 | 一种报文传输方法、报文传输装置、电子设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102868645A (zh) * | 2012-09-26 | 2013-01-09 | 盛科网络(苏州)有限公司 | Openflow交换机系统及其报文处理方法 |
CN103401783A (zh) * | 2013-07-26 | 2013-11-20 | 盛科网络(苏州)有限公司 | 实现Openflow多级流表的方法及装置 |
CN103841044A (zh) * | 2014-02-27 | 2014-06-04 | 中国科学技术大学苏州研究院 | 基于软件定义网络下面向不同流的带宽控制方法 |
WO2014098114A1 (ja) * | 2012-12-19 | 2014-06-26 | 日本電気株式会社 | パケット処理装置、フローエントリの配置方法及びプログラム |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080291919A1 (en) * | 2007-05-25 | 2008-11-27 | Futurewei Technologies, Inc. | Traffic Distribution and Bandwidth Management for Link Aggregation |
-
2014
- 2014-10-27 CN CN201410581537.1A patent/CN104283805B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102868645A (zh) * | 2012-09-26 | 2013-01-09 | 盛科网络(苏州)有限公司 | Openflow交换机系统及其报文处理方法 |
WO2014098114A1 (ja) * | 2012-12-19 | 2014-06-26 | 日本電気株式会社 | パケット処理装置、フローエントリの配置方法及びプログラム |
CN103401783A (zh) * | 2013-07-26 | 2013-11-20 | 盛科网络(苏州)有限公司 | 实现Openflow多级流表的方法及装置 |
CN103841044A (zh) * | 2014-02-27 | 2014-06-04 | 中国科学技术大学苏州研究院 | 基于软件定义网络下面向不同流的带宽控制方法 |
Also Published As
Publication number | Publication date |
---|---|
CN104283805A (zh) | 2015-01-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104982006B (zh) | 用于提供软件定义协议栈的系统和方法 | |
CN103841044B (zh) | 基于软件定义网络下面向不同流的带宽控制方法 | |
CN104954274B (zh) | 生成转发信息的方法、控制器和业务转发实体 | |
CN101478491B (zh) | 一种实现分组业务区分服务的方法及装置 | |
CN100596100C (zh) | 实现多协议标签交换网络差分业务流量工程的方法和系统 | |
CN105791152B (zh) | 一种流量控制方法、sdn控制器和sdn设备 | |
CN103763135B (zh) | 一种pe设备流量调度方法及装置 | |
CN104378309A (zh) | OpenFlow网络中实现QoS的方法、系统和相关设备 | |
CN109981488B (zh) | 一种调度方法及装置 | |
CN104283805B (zh) | 一种sdn网络报文发送方法及设备 | |
CN105610617A (zh) | 一种基于SDN和AP虚拟化技术的WLAN中区分用户优先级的QoS管理机制 | |
CN106506043A (zh) | 一种plc系统中的数据传输方法、控制装置及设备 | |
CN102752192B (zh) | 基于SCTP的ForCES传输映射层的带宽分配方法 | |
CN107846341A (zh) | 调度报文的方法、相关装置和系统 | |
CN107579925A (zh) | 报文转发方法及装置 | |
CN102780630B (zh) | 一种基于FPGA队列实现QoS队列的方法和设备 | |
CN103414651B (zh) | 一种调整等价路由均衡分担的方法和网络设备 | |
KR101841026B1 (ko) | 최적 경로 설정을 위한 서비스 기능 체이닝 네트워크 시스템 | |
CN107786456A (zh) | 流量控制方法及系统,分组交换设备及用户设备 | |
CN106792679A (zh) | 一种无线通信方法及系统 | |
CN109274589A (zh) | 业务传输的方法和装置 | |
CN102448120B (zh) | 多路径负荷分担方法及装置 | |
CN105142181A (zh) | 一种无线接入设备报文优先级映射方法及系统 | |
CN117459462A (zh) | 网络负载均衡方法和装置 | |
CN104302008A (zh) | 一种综合时分和缓存占比的无线多跳网络带宽分配方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information |
Address after: 310052 Binjiang District Changhe Road, Zhejiang, China, No. 466, No. Applicant after: Xinhua three Technology Co., Ltd. Address before: 310052 Binjiang District Changhe Road, Zhejiang, China, No. 466, No. Applicant before: Huasan Communication Technology Co., Ltd. |
|
CB02 | Change of applicant information | ||
GR01 | Patent grant | ||
GR01 | Patent grant |