CN104363170A - 一种软件定义网络中数据流转发方法和装置 - Google Patents

一种软件定义网络中数据流转发方法和装置 Download PDF

Info

Publication number
CN104363170A
CN104363170A CN201410687065.8A CN201410687065A CN104363170A CN 104363170 A CN104363170 A CN 104363170A CN 201410687065 A CN201410687065 A CN 201410687065A CN 104363170 A CN104363170 A CN 104363170A
Authority
CN
China
Prior art keywords
traffic engineering
source device
vxlan
engineering tunnel
mpls traffic
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.)
Granted
Application number
CN201410687065.8A
Other languages
English (en)
Other versions
CN104363170B (zh
Inventor
吴文国
王伟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hangzhou H3C Technologies Co Ltd
Original Assignee
Hangzhou H3C Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hangzhou H3C Technologies Co Ltd filed Critical Hangzhou H3C Technologies Co Ltd
Priority to CN201410687065.8A priority Critical patent/CN104363170B/zh
Publication of CN104363170A publication Critical patent/CN104363170A/zh
Application granted granted Critical
Publication of CN104363170B publication Critical patent/CN104363170B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明提供了一种软件定义网络中数据流转发方法,该方法包括:SDN控制器对有带宽要求的数据流,确定该数据流在underlay网络中转发的源设备和目的设备,并使所述源设备和目的设备之间建立满足带宽要求的MPLS TE隧道;并分配强制转发标识使所述数据流在underlay网络中转发时通过所述MPLS TE隧道发送。基于同样的发明构思,本申请还提出一种软件定义网络中数据流转发装置,对有带宽要求的租户,流量在underlay网络中传输时能够得到带宽保证。

Description

一种软件定义网络中数据流转发方法和装置
技术领域
本发明涉及通信技术领域,特别涉及一种软件定义网络中数据流转发方法和装置。
背景技术
网络拥塞是影响骨干网络性能的主要问题。拥塞的原因可能是网络资源不足,也可能是网络资源负载不均衡导致的局部拥塞。
流量工程(Traffic Engineering,TE)可以用来解决负载不均衡导致的拥塞问题。流量工程通过实时监控网络的流量和网络单元的负载,动态调整流量管理参数、路由参数和资源约束参数等,使网络运行状态迁移到理想状态,优化网络资源的使用,避免负载不均衡导致的拥塞。多协议标签交换(Multiprotocol Label Switching,MPLS)TE结合了MPLS技术与流量工程,通过建立沿着指定路径的标签交换路径(Label Switched Path,LSP)隧道进行资源预留,使网络流量绕开拥塞节点,达到平衡网络流量的目的。
在软件定义网络(Software Defined Network,SDN)虚拟化数据中心网络中,属于一个租户的虚拟机分布可能在不同服务器上,当同一租户,即对应同一虚拟局域网(Virtual eXtensible Local Area Network,VXLAN ID),且分布在不同服务器上的虚拟机需要通信,或者虚拟机与外部非虚拟化网络通信时,需要经过VXLAN封装后,穿越底层(underlay)网络,然后再到达目的设备。
流量在穿越underlay网络时,由于对于不同租户的流量,无法有效识别,当underlay网络中出现流量拥塞时,某些重要的租户的流量将无法得到带宽保证。
发明内容
有鉴于此,本申请提供一种软件定义网络中数据流转发方法和装置,以解决流量在underlay网络中传输时无法得到带宽保证的问题。
为解决上述技术问题,本申请的技术方案是这样实现的:
一种软件定义网络SDN中数据流转发方法,该方法包括:
SDN控制器接收到虚拟可扩展局域网隧道端点VTEP设备发送的针对数据流下发流转发表的请求时,若确定所述SDN控制器存储的虚拟局域网VXLAN标识与带宽要求的对应表中存在该数据流需要封装的VXLAN标识对应的带宽要求,则确定在底层underlay网络中转发该数据流的源设备和目的设备;
所述SDN控制器确定所述源设备和目的设备之间是否已建立多协议标签交换MPLS流量工程TE隧道;
若确定所述源设备和目的设备之间未建立MPLS TE隧道,则所述SDN控制器向所述源设备和目的设备下发建立MPLS TE隧道的配置,以使所述源设备和目的设备之间建立满足所述带宽要求的MPLS TE隧道;
所述SDN控制器为所述建立的MPLS TE隧道分配强制转发标识;
所述SDN控制器向所述VTEP设备下发流转发表,所述流转发表包括所述强制转发标识,使所述VTEP设备根据所述流转发表向所述源设备转发数据流时携带所述强制转发标识;
所述SDN控制器向所述源设备与所述VTEP设备相连的接口上下发转发策略,所述转发策略用于指示在通过所述接口接收到携带所述强制转发标识的数据流时,通过所述MPLS TE隧道发送所述数据流。
一种软件定义网络SDN中数据流转发装置,该装置包括:接收单元、确定单元和处理单元;
所述接收单元,用于接收虚拟可扩展局域网隧道端点VTEP设备发送的针对数据流下发流转发表的请求;
所述确定单元,用于当所述接收单元接收到VTEP设备发送的针对数据流下发流转发表的请求时,若确定存储的虚拟局域网VXLAN标识与带宽要求的对应表中存在该数据流需要封装的VXLAN标识对应的带宽要求,则确定在底层(underlay)网络中转发该数据流的源设备和目的设备;进一步确定所述源设备和目的设备之间是否已建立多协议标签交换流量工程MPLSTE隧道;
所述处理单元,用于若所述确定单元确定所述源设备和目的设备之间未建立MPLS TE隧道,则向所述源设备和目的设备下发建立MPLS TE隧道的配置,以使所述源设备和目的设备之间建立满足所述带宽要求的MPLS TE隧道;并为所述建立的MPLS TE隧道分配强制转发标识;向所述VTEP设备下发流转发表,所述流转发表包括所述强制转发标识,使所述VTEP设备根据所述流转发表向所述源设备转发数据流时携带所述强制转发标识;向所述源设备与所述VTEP设备相连的接口上下发转发策略,所述转发策略用于指示在通过所述接口接收到携带所述强制转发标识的数据流时,通过所述MPLS TE隧道发送所述数据流。
由上面的技术方案可知,本申请中SDN控制器对有带宽要求的数据流,确定该数据流在underlay网络中转发的源设备和目的设备,并使所述源设备和目的设备之间建立满足带宽要求的MPLS TE隧道;并分配强制转发标识使所述数据流在underlay网络中转发时通过所述MPLS TE隧道发送。对有带宽要求的租户,流量在underlay网络中传输时能够得到带宽保证。
附图说明
图1为本申请实施例中SDN中数据流转发方法流程示意图;
图2为overlay组网示意图;
图3为本申请实施例中SDN中数据流转发装置结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,下面结合附图并据实施例,对本发明的技术方案进行详细说明。
参见图1,图1为本申请实施例中SDN中数据流转发方法流程示意图。具体步骤为:
步骤101,SDN控制器接收到虚拟可扩展局域网隧道端点(VXLAN TunnelEnd Point,VTEP)设备发送的针对数据流下发流转发表的请求时,若确定所述SDN控制器存储的VXLAN标识与带宽要求的对应表中存在该数据流需要封装的VXLAN标识对应的带宽要求,则确定在underlay网络中转发该数据流的源设备和目的设备。
在具体实现时,如果某个租户需要在underlay网络中传输数据流得到带宽保证时,会配置并存储该租户,即该租户对应的VXLAN标识对应的带宽要求。
SDN控制器接收到下发流转发表的请求时,为对应数据流确定VXLAN隧道相关封装信息时,还需确定对应VXLAN标识是否对应带宽要求,如果是,则按本申请提供的技术方案,确定在underlay网络中转发该数据流的源设备和目的设备;否则,按现有实现。
本步骤中SDN控制器确定在underlay网络中转发该数据流的源设备和目的设备,具体包括:
SDN控制器根据所述数据流的源地址和目的地址确定转发所述数据流的VXLAN隧道的源地址和目的地址;确定将所述源地址对应的VTEP设备接入underlay网络的设备作为所述源设备;确定将所述目的地址对应的VTEP设备接入underlay网络的设备作为所述目的设备。
SDN控制器根据所述数据流的源IP地址和目的IP地址在overlay网络中确定需要封装的VXLAN隧道的源地址和目的地址时,如果该数据流的目的IP地址为本overlay网络中的VM的IP地址,且该数据流的源IP地址和目的IP地址属于同一VXLAN时,则确定的VXLAN隧道的目的IP地址为与目的VM相连的VTEP设备的地址;否则,确定的VXLAN隧道的目的IP地址为网关设备中的VTEP设备的地址。
步骤102,该SDN控制器确定所述源设备和目的设备之间是否已建立MPLSTE隧道。
步骤103,若确定所述源设备和目的设备之间未建立MPLS TE隧道,则所述SDN控制器向所述源设备和目的设备下发建立MPLS TE隧道的配置,以使所述源设备和目的设备之间建立满足所述带宽要求的MPLS TE隧道。
本步骤中建立的MPLS TE隧道可以为双向MPLS TE隧道,所述SDN控制器向所述源设备和目的设备下发建立MPLS TE隧道的配置,以使所述源设备和目的设备之间建立满足所述带宽要求的MPLS TE隧道,包括:
所述SDN控制器向所述源设备下发将所述源设备的MPLS LSR ID作为双向MPLS TE隧道的源地址的配置,并向所述目的设备下发将所述目的设备的MPLS LSR ID作为所述双向MPLS TE隧道的目的地址的配置;
所述SDN控制器在接收到所述源设备和目的设备中作为主动设备发送的路径计算请求时,为所述双向MPLS TE隧道计算满足所述带宽要求的路径,并将计算结果返回给所述主动设备,完成所述双向MPLS TE隧道的建立。
步骤104,所述SDN控制器为所述建立的MPLS TE隧道分配强制转发标识。
本步骤中为建立的MPLS TE隧道分配强制转发标识,即为与建立的MPLSTE隧道的源设备相连的VTEP设备和与目的设备相连的VTEP设备绑定分配强制转发标识。
所述强制转发标识可以全局唯一分配,也可以是针对一个接口全局唯一分配,这里的接口为与接入设备相连的VTEP设备的接口。
步骤104中,SDN控制器为所述建立的MPLS TE隧道分配强制转发标识之后,SDN控制器进一步记录带宽保证表项,所述带宽保证表项包括:VXLAN标识、所述源设备连接的VTEP设备的地址、所述目的设备连接的VTEP设备的地址和所述强制转发标识。
其中,所述VXLAN标识为根据该数据流确定的该数据流需要封装的VXLAN标识;所述源设备连接的VTEP设备的地址为根据所述数据流的源地址和目的地址确定转发所述数据流的VXLAN隧道的源地址;所述目的设备连接的VTEP设备的地址为根据所述数据流的源地址和目的地址确定转发所述数据流的VXLAN隧道的目的地址。
该带宽保证表项用于确定源设备和目的设备之间是否已建立MPLS TE隧道,确定已建立的MPLS TE隧道对应的VXLAN标识中是否包括所述需要封装的VXLAN标识,具体实现如下:
SDN控制器确定所述源设备和目的设备之间是否已建立MPLS TE隧道,包括:
SDN控制器确定所述源设备和目的设备连接的VTEP设备的地址是否能匹配到对应的带宽保证表项,如果是,确定所述源设备和目的设备之间已建立MPLS TE隧道;否则,确定所述源设备和目的设备之间未建立MPLS TE隧道。
其中,所述源设备和目的设备连接的VTEP设备的地址,为根据所述数据流的源地址和目的地址确定的转发所述数据流的VXLAN隧道的源地址和目的地址。
步骤105,所述SDN控制器向所述VTEP设备下发流转发表,所述流转发表包括所述强制转发标识,使所述VTEP设备根据所述流转发表向所述源设备转发数据流时携带所述强制转发标识。
本步骤中向VTEP设备下发的流转发表仅增加一个强制转发标识,其他内容均同现有实现。
数据流携带所述强制转发标识的具体形式,根据具体实现确定,如使用优先级实现强制转发标识,则在数据流VXLAN封装时在优先级字段携带该强制转发标识,在接入设备接收到该VXLAN封装的数据时,根据报文协议为该数据流恢复优先级即可;
如果使用报文中不存在的字段内容实现强制转发标识,则在VXLAN封装的数据流中的预留字段中或额外增加字段携带该强制转发标识;在接入设备接收到VXLAN封装的数据时,直接将该强制转发标识删除即可。
步骤106,所述SDN控制器向所述源设备与所述VTEP设备相连的接口上下发转发策略,所述转发策略用于指示在通过所述接口接收到携带所述强制转发标识的数据流时,通过所述MPLS TE隧道发送所述数据流。
所述SDN控制器还向所述目的设备上的与所述VXLAN隧道的目的地址对应的VTEP设备相连的接口上下发所述转发策略。
步骤105和步骤106的执行顺序不做限制,优选先执行步骤106再执行步骤105。
执行步骤102时,若SDN控制器确定所述源设备和目的设备之间已建立MPLS TE隧道,进一步确定已建立的MPLS TE隧道对应的VXLAN标识中是否包括所述需要封装的VXLAN标识。
SDN控制器确定已建立的MPLS TE隧道对应的VXLAN标识中是否包括所述需要封装的VXLAN标识,包括:
所述SDN控制器确定所述匹配到的带宽保证表项中的VXLAN标识中是否包括所述需要封装的VXLAN标识;若所述匹配到的带宽保证表项中的VXLAN标识中包括所述需要封装的VXLAN标识,则确定已建立的MPLS TE隧道对应的VXLAN标识中包括所述需要封装的VXLAN标识;若所述匹配到的带宽保证表项中的VXLAN标识中不包括所述需要封装的VXLAN标识,则确定已建立的MPLS TE隧道对应的VXLAN标识中不包括所述需要封装的VXLAN标识。
当确定所述已建立的MPLS TE隧道对应的VXLAN标识中不包含所述需要封装的VXLAN标识时,所述SDN控制器重新计算该MPLS TE隧道的路径,所述重新计算的该MPLS TE隧道的路径的带宽不小于所述已建立的MPLS TE隧道转发的数据流的带宽要求与所述需要封装的VXLAN标识对应的带宽要求的和;并将计算结果发送给所述已建立的MPLS TE隧道对应的源设备和目的设备,使所述已建立的MPLS TE隧道对应的源设备和目的设备重新完成该MPLSTE隧道的建立;
所述SDN控制器向所述VTEP设备下发包括为所述已建立的MPLS TE隧道分配的强制转发标识的流转发表。
SDN控制器在向所述VTEP下发流转发表时,还进行带宽保证表项的记录,可以将所述需要封装的VXLAN标识添加到对应的带宽保证表项中即可,也可以再保存一条带宽保证表项。
当确定所述已建立的MPLS TE隧道对应的VXLAN标识中包含所述需要封装的VXLAN标识时,所述SDN控制器向所述VTEP设备下发包括为所述已建立的MPLS TE隧道分配的强制转发标识的流转发表。
本申请实施例中,当确定所述已建立的MPLS TE隧道对应的VXLAN标识中不包含所述需要封装的VXLAN标识时,不需要重新建立MPLS TE隧道,而是重新计算该MPLS TE隧道的路径,所述重新计算的该MPLS TE隧道的路径的带宽满足所述已建立的MPLS TE隧道转发的数据流的带宽要求与所述需要封装的VXLAN标识对应的带宽要求的和即可。触发该操作可以通过隧道CRLSP托管属性实现。具体实现如下:
所述SDN控制器向所述源设备和目的设备下发建立MPLS TE隧道的配置时,同时下发隧道CRLSP托管属性。
所述SDN控制器在接收到所述源设备和目的设备中的主动设备发送的托管MPLS TE隧道对应的CRLSP的通知时,确定所述MPLS TE隧道建立完成,并记录该MPLS TE隧道对应的CRLSP已被托管,以在确定已建立的MPLS TE隧道对应的VXLAN标识中不包含所述需要封装的VXLAN标识时,触发重新计算该MPLS隧道的路径。
所述SDN控制器在下发隧道CRLSP托管属性时,还可以为所述MPLS TE隧道开启CRLSP托管属性定时器;在定时器超时时,如果还未接收到主动设备发送的托管MPLS TE隧道对应的CRLSP的通知时,认为源设备和目的设备之间的隧道未能够建立完成,SDN控制器按现有实现为所述VTEP设备下发转发流表。
参见图2,图2为overlay组网示意图。图2中VM1和VM4属于同一个组户,对应VXLAN标识为1,VM2和VM3属于同一个租户,对应VXLAN标识为2,VM1的IP地址为IP1-1,VM4的IP地址为IP2-4,VTEP设备1的IP地址为IP1,VTEP设备2的IP地址为IP2,设备A的接口A的IP地址为IPA,设备B的接口B的IP地址为IPB。现在VM1和VM4,以及VM2和VM3跨域underlay网络进行通信。VXLAN标识1对应带宽要求为10M,VXLAN标识2对应带宽要求为20M。
下面以VM1先向VM4发送数据流,VM2再向VM3发送数据流为例,具体流程如下:
第一步,VM1向VTEP1发送目的IP地址为IP2-4的数据流,即需要发送至VM4的数据流。
第二步,VTEP1接收到VM1发送的数据流时,根据该数据流的元组信息在本地查对应的流转发表,如果查找到,根据查找到的流转发表转发,结束本流程;如果未查找到,则向SDN控制器发送针对该数据流下发流转发表的请求。
VTEP1在向SDN控制器发送下发流转发表的请求时,可以将该数据流打包上送,也可以只上送该数据流的元组信息。
第三步,SDN控制器接收到VTEP设备1发送的针对该数据流下发流转发表的请求时,若根据该请求确定VXLAN标识与带宽要求的对应表中存在需要为该数据流封装的VXLAN标识1对应的带宽要求,则确定在底层underlay网络中转发该数据流的源设备(设备A)和目的设备(设备B)。
SDN控制器根据数据流的源IP地址IP1-1和目的IP地址IP2-4确定为该数据流封装的VXLAN标识1,再在VXLAN标识与带宽要求的对应表中确定VXLAN标识1对应带宽要求10M。
SDN控制器确定VXLAN标识1对应的VXLAN隧道,并确定该VXLAN隧道的源地址为VTEP1的地址IP1和目的地址为VTEP2的地址IP2,然后根据网络拓扑确定VTEP1默认路由的下一跳(设备A的接口A的IP地址(IPA))和VTEP2默认路由的下一跳(设备B的接口B的IP地址(IPB))。
SDN控制器将接口A所属的设备A确定为源设备,接口B所属的设备B确定为目的设备。
第四步,SDN控制器确定设备A的MPLS LSR ID作为在设备A和设备B之间建立双向MPLS TE隧道的源IP地址,设备B的MPLS LSR ID作为在设备A和设备B之间建立双向MPLS TE隧道的目的IP地址。
第五步,SDN控制器将建立双向MPLS TE隧道的源IP地址和目的IP地址,以及带宽要求和CRLSP托管属性下发给所述源设备和目的设备,并启动针对所述双向MPLS TE隧道的CRLSP托管属性定时器。
第六步,设备A和设备B中的主动设备(主动设备由SDN控制器确定,假设为设备A)向SDN设备发送计算满足带宽要求10M的路径计算请求。具体实现时,可以通过PCEP协议发送请求。
第七步,SDN控制器接收到该请求时,通过本地的拓扑数据库计算满足带宽要求的路径,若计算成功,则向设备A返回路径结算结果,执行第八步;若计算不成功,则向设备A返回不能计算出满足所述带宽要求的路径的响应,按现有实现为VTEP1下发流转发表,结束本流程。
为了节省内容,未建立完成双向MPLS TE隧道的相关配置信息可以删除。
第八步,设备A接收到SDN控制器返回的路径计算结果,完成双向MPLSTE隧道的建立,并通知SDN控制器托管该双向MPLS TE隧道对应的CRLSP。
第九步,SDN控制器在定时器超时前接收到设备A发送的托管该双向MPLS TE隧道对应的CRLSP的通知时,获知双向MPLS TE隧道已建立成功,并记录该MPLS TE隧道对应的CRLSP已被托管,执行第十步;若在启动的CRLSP托管属性定时器超时时,未接收到设备A发送的托管该双向MPLS TE隧道对应的CRLSP的通知,则按现有实现向VTEP设备1下发流转发表,结束本流程。
第十步,SDN控制器为建立的双向MPLS TE隧道分配强制转发标识,并建立带宽保证表项。该带宽保证表项包括:VXLAN标识1、VTEP设备1的IP地址IP1、VTEP2的IP地址IP2和所述强制转发标识。
第十一步,SDN控制器向设备A的接口A和设备B的接口B下发转发策略,并向VTEP设备1下发包括为所述已建立的MPLS TE隧道分配的强制转发标识的流转发表。
第十二步,VTEP设备1根据接收到的流转发表将所述数据流转发给设备A,所述数据流携带所述强制转发标识。
第十三步,设备A通过接口A接收到所述数据流时,根据配置的转发策略将携带所述转发标识的数据流通过对应的双向MPLS TE隧道进行发送,通过所述双向MPLS TE隧道发送给设备B后,再转发给VM4的过程同现有实现,不再详细描述。
第十四步,VM2向VTEP1发送目的IP地址为IP2-3的数据流,即需要发送至VM3的数据流。
第十五步,VTEP设备1接收到VM2发送的数据流,且未查找到对应的流转发表时,向SDN控制器发送针对该数据流下发流转发表的请求。
第十六步,SDN控制器接收到VTEP设备1发送的请求时,确定需要封装的VXLAN标识2对应带宽要求20M时,使用与源设备(设备A)相连的VTEP设备1的IP地址1和与目的设备(设备B)相连的VTEP设备2的IP地址2在带宽保证表项中匹配到对应的表项,由第十步记录的带宽保证表项可见;确定匹配到的带宽保证表项中对应的VXLAN标识中不包括VXLAN标识2,且记录该双向MPLS TE隧道对应的CRLSP已被托管,则针对所述双向MPLS TE隧道重新进行路径计算(重新计算的路径的带宽不小于30M),并将路径计算结果返回给设备A和设备B重新建立所述双向MPLS TE隧道。
第十七步,SDN控制器将VXLAN标识2添加到匹配到的带宽保证表项中,并向VTEP设备下发包括为所述已建立的MPLS TE隧道分配的强制转发标识的流转发表。
后续转发流程同步第十二和十三步类似,不再详细描述。
基于同样的发明构思,本申请还提出一种软件定义网络中数据流转发装置。参见图3,图3为本申请实施例中SDN中数据流转发装置结构示意图。该装置包括:接收单元301、确定单元302和处理单元303。
接收单元301,用于接收VTEP设备发送的针对数据流下发流转发表的请求;
确定单元302,用于当接收单元301接收到VTEP设备发送的针对数据流下发流转发表的请求时,若确定存储的虚拟局域网VXLAN标识与带宽要求的对应表中存在该数据流需要封装的VXLAN标识对应的带宽要求,则确定在底层(underlay)网络中转发该数据流的源设备和目的设备;进一步确定所述源设备和目的设备之间是否已建立多协议标签交换流量工程MPLSTE隧道;
处理单元303,用于若确定单元302确定所述源设备和目的设备之间未建立MPLS TE隧道,则向所述源设备和目的设备下发建立MPLS TE隧道的配置,以使所述源设备和目的设备之间建立满足所述带宽要求的MPLS TE隧道;并为所述建立的MPLS TE隧道分配强制转发标识;向所述VTEP设备下发流转发表,所述流转发表包括所述强制转发标识,使所述VTEP设备根据所述流转发表向所述源设备转发数据流时携带所述强制转发标识;向所述源设备与所述VTEP设备相连的接口上下发转发策略,所述转发策略用于指示在通过所述接口接收到携带所述强制转发标识的数据流时,通过所述MPLS TE隧道发送所述数据流。
较佳地,
确定单元302,具体用于确定在underlay网络中转发该数据流的源设备和目的设备时,根据所述数据流的源地址和目的地址确定转发所述数据流的VXLAN隧道的源地址和目的地址;确定将所述源地址对应的VTEP设备接入underlay网络的设备作为所述源设备;确定将所述目的地址对应的VTEP设备接入underlay网络的设备作为所述目的设备;
接收单元301,进一步用于接收路径计算请求;
处理单元303,具体用于向所述源设备和目的设备下发建立MPLS TE隧道的配置,以使所述源设备和目的设备之间建立满足所述带宽要求的MPLSTE隧道时,向所述源设备下发将所述源设备的MPLS LSR ID作为所述双向MPLS TE隧道的源地址的配置,并向所述目的设备下发将所述目的设备的MPLS LSR ID作为所述双向MPLS TE隧道的目的地址的配置;当接收单元301接收到所述源设备和目的设备中作为主动设备发送的路径计算请求时,为所述双向MPLS TE隧道计算满足所述带宽要求的路径,并将计算结果返回给所述主动设备,以使所述源设备和目的设备完成所述双向MPLS TE隧道的建立。
较佳地,
处理单元303,进一步用于向所述目的设备上的与所述VXLAN隧道的目的地址对应的VTEP设备相连的接口上下发所述转发策略。
较佳地,
确定单元302,进一步用于若确定所述源设备和目的设备之间已建立MPLS TE隧道,确定已建立的MPLS TE隧道对应的VXLAN标识中是否包括所述需要封装的VXLAN标识;
处理单元303,进一步用于当确定单元302确定所述已建立的MPLS TE隧道对应的VXLAN标识中不包含所述需要封装的VXLAN标识时,所述SDN控制器重新计算该MPLS TE隧道的路径,所述重新计算的该MPLS TE隧道的路径的带宽不小于所述已建立的MPLS TE隧道转发的数据流的带宽要求与所述需要封装的VXLAN标识对应的带宽要求的和;并将计算结果发送给所述已建立的MPLS TE隧道对应的源设备和目的设备,使所述已建立的MPLS TE隧道对应的源设备和目的设备重新完成该MPLS TE隧道的建立;向所述VTEP设备下发包括为所述已建立的MPLS TE隧道分配的强制转发标识的流转发表。
较佳地,
处理单元303,进一步用于当确定单元302确定所述已建立的MPLS TE隧道对应的VXLAN标识中包含所述需要封装的VXLAN标识时,向所述VTEP设备下发包括为所述已建立的MPLS TE隧道分配的强制转发标识的流转发表。
较佳地,
处理单元303,进一步用于为所述建立的MPLS TE隧道分配强制转发标识时,记录带宽保证表项,所述带宽保证表项包括:VXLAN标识、所述源设备连接的VTEP设备的地址、所述目的设备连接的VTEP设备的地址和强制转发标识;
确定单元302,具体用于确定所述源设备和目的设备之间是否已建立MPLS TE隧道时,确定所述源设备和目的设备连接的VTEP设备的地址是否能匹配到对应的带宽保证表项,如果是,确定所述源设备和目的设备之间已建立MPLS TE隧道;否则,确定所述源设备和目的设备之间未建立MPLS TE隧道;确定已建立的MPLS TE隧道对应的VXLAN标识中是否包括所述需要封装的VXLAN标识时,确定所述匹配到的带宽保证表项中的VXLAN标识中是否包括所述需要封装的VXLAN标识;若所述匹配到的带宽保证表项中的VXLAN标识中包括所述需要封装的VXLAN标识,则确定已建立的MPLS TE隧道对应的VXLAN标识中包括所述需要封装的VXLAN标识;若所述匹配到的带宽保证表项中的VXLAN标识中不包括所述需要封装的VXLAN标识,则确定已建立的MPLS TE隧道对应的VXLAN标识中不包括所述需要封装的VXLAN标识。
上述实施例的单元可以集成于一体,也可以分离部署;可以合并为一个单元,也可以进一步拆分成多个子单元。
综上所述,本申请中SDN控制器对有带宽要求的数据流,确定该数据流在underlay网络中转发的源设备和目的设备,并使所述源设备和目的设备之间建立满足带宽要求的MPLS TE隧道;并分配强制转发标识使所述数据流在underlay网络中转发时通过所述MPLS TE隧道发送。对有带宽要求的租户,流量在underlay网络中传输时能够得到带宽保证。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。

Claims (12)

1.一种软件定义网络SDN中数据流转发方法,其特征在于,该方法包括:
SDN控制器接收到虚拟可扩展局域网隧道端点VTEP设备发送的针对数据流下发流转发表的请求时,若确定所述SDN控制器存储的虚拟局域网VXLAN标识与带宽要求的对应表中存在该数据流需要封装的VXLAN标识对应的带宽要求,则确定在底层underlay网络中转发该数据流的源设备和目的设备;
所述SDN控制器确定所述源设备和目的设备之间是否已建立多协议标签交换MPLS流量工程TE隧道;
若确定所述源设备和目的设备之间未建立MPLS TE隧道,则所述SDN控制器向所述源设备和目的设备下发建立MPLS TE隧道的配置,以使所述源设备和目的设备之间建立满足所述带宽要求的MPLS TE隧道;
所述SDN控制器为所述建立的MPLS TE隧道分配强制转发标识;
所述SDN控制器向所述VTEP设备下发流转发表,所述流转发表包括所述强制转发标识,使所述VTEP设备根据所述流转发表向所述源设备转发该数据流时携带所述强制转发标识;
所述SDN控制器向所述源设备与所述VTEP设备相连的接口上下发转发策略,所述转发策略用于指示在通过所述接口接收到携带所述强制转发标识的数据流时,通过所述MPLS TE隧道发送所述数据流。
2.根据权利要求1所述的方法,其特征在于,所述确定在underlay网络中转发该数据流的源设备和目的设备,包括:
所述SDN控制器根据所述数据流的源地址和目的地址确定转发所述数据流的VXLAN隧道的源地址和目的地址;确定将所述源地址对应的VTEP设备接入underlay网络的设备作为所述源设备;确定将所述目的地址对应的VTEP设备接入underlay网络的设备作为所述目的设备;
所述SDN控制器向所述源设备和目的设备下发建立MPLS TE隧道的配置,以使所述源设备和目的设备之间建立满足所述带宽要求的MPLS TE隧道,包括:
所述SDN控制器向所述源设备下发将所述源设备的MPLS标签交换路径LSR标识ID作为双向MPLS TE隧道的源地址的配置,并向所述目的设备下发将所述目的设备的MPLS LSR ID作为所述双向MPLS TE隧道的目的地址的配置;
所述SDN控制器在接收到所述源设备和目的设备中作为主动设备发送的路径计算请求时,为所述双向MPLS TE隧道计算满足所述带宽要求的路径,并将计算结果返回给所述主动设备,以使所述源设备和目的设备完成所述双向MPLSTE隧道的建立。
3.根据权利要求2所述的方法,其特征在于,所述方法进一步包括:
所述SDN控制器向所述目的设备上的与所述VXLAN隧道的目的地址对应的VTEP设备相连的接口上下发所述转发策略。
4.根据权利要求1-3任意一项所述的方法,其特征在于,所述方法进一步包括:
若所述SDN控制器确定所述源设备和目的设备之间已建立MPLS TE隧道,确定已建立的MPLS TE隧道对应的VXLAN标识中是否包括所述需要封装的VXLAN标识;
当确定所述已建立的MPLS TE隧道对应的VXLAN标识中不包含所述需要封装的VXLAN标识时,所述SDN控制器重新计算该MPLS TE隧道的路径,所述重新计算的该MPLS TE隧道的路径的带宽不小于所述已建立的MPLS TE隧道转发的数据流的带宽要求与所述需要封装的VXLAN标识对应的带宽要求的和;并将计算结果发送给所述已建立的MPLS TE隧道对应的源设备和目的设备,使所述已建立的MPLS TE隧道对应的源设备和目的设备重新完成该MPLSTE隧道的建立;
所述SDN控制器向所述VTEP设备下发包括为所述已建立的MPLS TE隧道分配的强制转发标识的流转发表。
5.根据权利要求4所述的方法,其特征在于,所述方法进一步包括:
当确定所述已建立的MPLS TE隧道对应的VXLAN标识中包含所述需要封装的VXLAN标识时,所述SDN控制器为所述VTEP设备下发包括为所述已建立的MPLS TE隧道分配的强制转发标识流转发表。
6.根据权利要求5所述的方法,其特征在于,所述SDN控制器为所述建立的MPLS TE隧道分配强制转发标识之后,所述方法进一步包括:记录带宽保证表项,所述带宽保证表项包括:VXLAN标识、所述源设备连接的VTEP设备的地址、所述目的设备连接的VTEP设备的地址和强制转发标识;
所述SDN控制器确定所述源设备和目的设备之间是否已建立MPLS TE隧道,包括:
确定所述源设备和目的设备连接的VTEP设备的地址是否能匹配到对应的带宽保证表项,如果是,确定所述源设备和目的设备之间已建立MPLS TE隧道;否则,确定所述源设备和目的设备之间未建立MPLS TE隧道;
所述确定已建立的MPLS TE隧道对应的VXLAN标识中是否包括所述需要封装的VXLAN标识,包括:
所述SDN控制器确定所述匹配到的带宽保证表项中的VXLAN标识中是否包括所述需要封装的VXLAN标识;若所述匹配到的带宽保证表项中的VXLAN标识中包括所述需要封装的VXLAN标识,则确定已建立的MPLS TE隧道对应的VXLAN标识中包括所述需要封装的VXLAN标识;若所述匹配到的带宽保证表项中的VXLAN标识中不包括所述需要封装的VXLAN标识,则确定已建立的MPLS TE隧道对应的VXLAN标识中不包括所述需要封装的VXLAN标识。
7.一种软件定义网络SDN中数据流转发装置,其特征在于,该装置包括:接收单元、确定单元和处理单元;
所述接收单元,用于接收虚拟可扩展局域网隧道端点VTEP设备发送的针对数据流下发流转发表的请求;
所述确定单元,用于当所述接收单元接收到VTEP设备发送的针对数据流下发流转发表的请求时,若确定存储的虚拟局域网VXLAN标识与带宽要求的对应表中存在该数据流需要封装的VXLAN标识对应的带宽要求,则确定在底层(underlay)网络中转发该数据流的源设备和目的设备;进一步确定所述源设备和目的设备之间是否已建立多协议标签交换流量工程MPLS TE隧道;
所述处理单元,用于若所述确定单元确定所述源设备和目的设备之间未建立MPLS TE隧道,则向所述源设备和目的设备下发建立MPLS TE隧道的配置,以使所述源设备和目的设备之间建立满足所述带宽要求的MPLS TE隧道;并为所述建立的MPLS TE隧道分配强制转发标识;向所述VTEP设备下发流转发表,所述流转发表包括所述强制转发标识,使所述VTEP设备根据所述流转发表向所述源设备转发数据流时携带所述强制转发标识;向所述源设备与所述VTEP设备相连的接口上下发转发策略,所述转发策略用于指示在通过所述接口接收到携带所述强制转发标识的数据流时,通过所述MPLS TE隧道发送所述数据流。
8.根据权利要求7所述的装置,其特征在于,
所述确定单元,具体用于确定在underlay网络中转发该数据流的源设备和目的设备时,根据所述数据流的源地址和目的地址确定转发所述数据流的VXLAN隧道的源地址和目的地址;确定将所述源地址对应的VTEP设备接入underlay网络的设备作为所述源设备;确定将所述目的地址对应的VTEP设备接入underlay网络的设备作为所述目的设备;
所述接收单元,进一步用于接收路径计算请求;
所述处理单元,具体用于向所述源设备和目的设备下发建立MPLS TE隧道的配置,以使所述源设备和目的设备之间建立满足所述带宽要求的MPLS TE隧道时,向所述源设备下发将所述源设备的MPLS标签交换路径LSR标识ID作为所述双向MPLS TE隧道的源地址的配置,并向所述目的设备下发将所述目的设备的MPLS LSR ID作为所述双向MPLS TE隧道的目的地址的配置;当所述接收单元接收到所述源设备和目的设备中作为主动设备发送的路径计算请求时,为所述双向MPLS TE隧道计算满足所述带宽要求的路径,并将计算结果返回给所述主动设备,以使所述源设备和目的设备完成所述双向MPLS TE隧道的建立。
9.根据权利要求8所述的装置,其特征在于,
所述处理单元,进一步用于向所述目的设备上的与所述VXLAN隧道的目的地址对应的VTEP设备相连的接口上下发所述转发策略。
10.根据权利要求7-9任意一项所述的装置,其特征在于,
所述确定单元,进一步用于若确定所述源设备和目的设备之间已建立MPLSTE隧道,确定已建立的MPLS TE隧道对应的VXLAN标识中是否包括所述需要封装的VXLAN标识;
所述处理单元,进一步用于当所述确定单元确定所述已建立的MPLS TE隧道对应的VXLAN标识中不包含所述需要封装的VXLAN标识时,所述SDN控制器重新计算该MPLS TE隧道的路径,所述重新计算的该MPLS TE隧道的路径的带宽不小于所述已建立的MPLS TE隧道转发的数据流的带宽要求与所述需要封装的VXLAN标识对应的带宽要求的和;并将计算结果发送给所述已建立的MPLS TE隧道对应的源设备和目的设备,使所述已建立的MPLS TE隧道对应的源设备和目的设备重新完成该MPLS TE隧道的建立;向所述VTEP设备下发包括为所述已建立的MPLS TE隧道分配的强制转发标识的流转发表。
11.根据权利要求10所述的装置,其特征在于,
所述处理单元,进一步用于当所述确定单元确定所述已建立的MPLS TE隧道对应的VXLAN标识中包含所述需要封装的VXLAN标识时,向所述VTEP设备下发包括为所述已建立的MPLS TE隧道分配的强制转发标识的流转发表。
12.根据权利要求11所述的装置,其特征在于,
所述处理单元,进一步用于为所述建立的MPLS TE隧道分配强制转发标识之后,记录带宽保证表项,所述带宽保证表项包括:VXLAN标识、所述源设备连接的VTEP设备的地址、所述目的设备连接的VTEP设备的地址和强制转发标识;
所述确定单元,具体用于确定所述源设备和目的设备之间是否已建立MPLSTE隧道时,确定所述源设备和目的设备连接的VTEP设备的地址是否能匹配到对应的带宽保证表项,如果是,确定所述源设备和目的设备之间已建立MPLS TE隧道;否则,确定所述源设备和目的设备之间未建立MPLS TE隧道;确定已建立的MPLS TE隧道对应的VXLAN标识中是否包括所述需要封装的VXLAN标识时,确定所述匹配到的带宽保证表项中的VXLAN标识中是否包括所述需要封装的VXLAN标识;若所述匹配到的带宽保证表项中的VXLAN标识中包括所述需要封装的VXLAN标识,则确定已建立的MPLS TE隧道对应的VXLAN标识中包括所述需要封装的VXLAN标识;若所述匹配到的带宽保证表项中的VXLAN标识中不包括所述需要封装的VXLAN标识,则确定已建立的MPLS TE隧道对应的VXLAN标识中不包括所述需要封装的VXLAN标识。
CN201410687065.8A 2014-11-25 2014-11-25 一种软件定义网络中数据流转发方法和装置 Active CN104363170B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410687065.8A CN104363170B (zh) 2014-11-25 2014-11-25 一种软件定义网络中数据流转发方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410687065.8A CN104363170B (zh) 2014-11-25 2014-11-25 一种软件定义网络中数据流转发方法和装置

Publications (2)

Publication Number Publication Date
CN104363170A true CN104363170A (zh) 2015-02-18
CN104363170B CN104363170B (zh) 2017-08-11

Family

ID=52530397

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410687065.8A Active CN104363170B (zh) 2014-11-25 2014-11-25 一种软件定义网络中数据流转发方法和装置

Country Status (1)

Country Link
CN (1) CN104363170B (zh)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105357080A (zh) * 2015-12-01 2016-02-24 电子科技大学 一种应用于软件定义网络的流量工程方法
CN105591925A (zh) * 2015-12-10 2016-05-18 杭州华三通信技术有限公司 应用于sdn中的报文转发方法和设备
WO2016155604A1 (en) * 2015-03-31 2016-10-06 Hangzhou H3C Technologies Co., Ltd. Packet transmission
CN106713519A (zh) * 2015-11-13 2017-05-24 南宁富桂精密工业有限公司 基于软体定义网络的网络传输方法与***
CN106789527A (zh) * 2016-12-09 2017-05-31 中国联合网络通信集团有限公司 一种专线网络接入的方法及***
CN107342893A (zh) * 2017-06-17 2017-11-10 刘昱 一种基于sdn的网络加速方法及装置
CN107592208A (zh) * 2016-07-08 2018-01-16 中兴通讯股份有限公司 流量管理方法及装置
CN110324248A (zh) * 2018-03-30 2019-10-11 中移(苏州)软件技术有限公司 一种裸金属服务器路由更新方法、装置、电子设备及介质
US10462101B2 (en) 2015-11-13 2019-10-29 Nanning Fugui Precision Industrial Co., Ltd. Network communication method based on software-defined networking and server using the method
CN112104551A (zh) * 2016-03-03 2020-12-18 华为技术有限公司 用于软件定义网络控制器之间通信的边界网关协议
CN112436990A (zh) * 2020-10-12 2021-03-02 网络通信与安全紫金山实验室 一种数据转发方法、设备以及计算机可读存储介质
CN114531393A (zh) * 2021-12-30 2022-05-24 百果园技术(新加坡)有限公司 分段路由策略下发方法、装置、设备、介质及程序产品

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102857416A (zh) * 2012-09-18 2013-01-02 中兴通讯股份有限公司 一种实现虚拟网络的方法和虚拟网络
US8532116B2 (en) * 2009-07-21 2013-09-10 Cisco Technology, Inc. Extended subnets
US20140086251A1 (en) * 2004-01-20 2014-03-27 Rockstar Consortium Us Lp Ethernet differentiated services architecture
CN104038421A (zh) * 2014-06-25 2014-09-10 杭州华三通信技术有限公司 一种vpn报文转发方法和装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140086251A1 (en) * 2004-01-20 2014-03-27 Rockstar Consortium Us Lp Ethernet differentiated services architecture
US8532116B2 (en) * 2009-07-21 2013-09-10 Cisco Technology, Inc. Extended subnets
CN102857416A (zh) * 2012-09-18 2013-01-02 中兴通讯股份有限公司 一种实现虚拟网络的方法和虚拟网络
CN104038421A (zh) * 2014-06-25 2014-09-10 杭州华三通信技术有限公司 一种vpn报文转发方法和装置

Cited By (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106161283B (zh) * 2015-03-31 2019-12-06 新华三技术有限公司 报文传输方法及装置
WO2016155604A1 (en) * 2015-03-31 2016-10-06 Hangzhou H3C Technologies Co., Ltd. Packet transmission
CN106161283A (zh) * 2015-03-31 2016-11-23 杭州华三通信技术有限公司 报文传输方法及装置
CN106713519A (zh) * 2015-11-13 2017-05-24 南宁富桂精密工业有限公司 基于软体定义网络的网络传输方法与***
US10462101B2 (en) 2015-11-13 2019-10-29 Nanning Fugui Precision Industrial Co., Ltd. Network communication method based on software-defined networking and server using the method
CN106713519B (zh) * 2015-11-13 2020-05-08 南宁富桂精密工业有限公司 基于软体定义网络的网络传输方法与***
CN105357080B (zh) * 2015-12-01 2019-01-04 电子科技大学 一种应用于软件定义网络的流量工程方法
CN105357080A (zh) * 2015-12-01 2016-02-24 电子科技大学 一种应用于软件定义网络的流量工程方法
CN105591925B (zh) * 2015-12-10 2019-03-12 新华三技术有限公司 应用于sdn中的报文转发方法和设备
CN105591925A (zh) * 2015-12-10 2016-05-18 杭州华三通信技术有限公司 应用于sdn中的报文转发方法和设备
CN112104551B (zh) * 2016-03-03 2022-01-18 华为技术有限公司 用于软件定义网络控制器之间通信的边界网关协议
CN112104551A (zh) * 2016-03-03 2020-12-18 华为技术有限公司 用于软件定义网络控制器之间通信的边界网关协议
CN107592208A (zh) * 2016-07-08 2018-01-16 中兴通讯股份有限公司 流量管理方法及装置
CN107592208B (zh) * 2016-07-08 2022-07-29 中兴通讯股份有限公司 流量管理方法及装置
CN106789527A (zh) * 2016-12-09 2017-05-31 中国联合网络通信集团有限公司 一种专线网络接入的方法及***
CN106789527B (zh) * 2016-12-09 2020-03-03 中国联合网络通信集团有限公司 一种专线网络接入的方法及***
CN107342893A (zh) * 2017-06-17 2017-11-10 刘昱 一种基于sdn的网络加速方法及装置
CN110324248B (zh) * 2018-03-30 2021-07-30 中移(苏州)软件技术有限公司 一种裸金属服务器路由更新方法、装置、电子设备及介质
CN110324248A (zh) * 2018-03-30 2019-10-11 中移(苏州)软件技术有限公司 一种裸金属服务器路由更新方法、装置、电子设备及介质
CN112436990A (zh) * 2020-10-12 2021-03-02 网络通信与安全紫金山实验室 一种数据转发方法、设备以及计算机可读存储介质
CN114531393A (zh) * 2021-12-30 2022-05-24 百果园技术(新加坡)有限公司 分段路由策略下发方法、装置、设备、介质及程序产品
CN114531393B (zh) * 2021-12-30 2023-11-28 百果园技术(新加坡)有限公司 分段路由策略下发方法、装置、设备及介质

Also Published As

Publication number Publication date
CN104363170B (zh) 2017-08-11

Similar Documents

Publication Publication Date Title
CN104363170A (zh) 一种软件定义网络中数据流转发方法和装置
CN109756425B (zh) 组播转发方法、装置以及bfr
CN103748835B (zh) 标签交换路径的动态更新
US9960991B2 (en) Method, apparatus and system for determining service transmission path
CN104702479B (zh) Sdn网络中建立隧道的方法和装置
CN108574616A (zh) 一种处理路由的方法、设备及***
CN113411243B (zh) 数据传输方法及装置
CN106453025A (zh) 一种隧道创建方法及装置
WO2016131225A1 (zh) 报文转发处理方法、装置、控制器及路由转发设备
WO2015192501A1 (zh) 地址信息的发布方法及装置
JP2002141932A (ja) ネットワーク共有帯域割当て方法及びこれを用いるネットワークシステム
CN105282028A (zh) 一种报文传输方法、节点及路径管理服务器
US11632322B2 (en) Preferred path route graphs in a network
JP2006211661A (ja) Mpls基盤のvpn提供装置及びvpn提供方法
CN109617803B (zh) 一种转发表项生成方法、装置及设备
WO2015054904A1 (zh) 转发报文的方法、控制器、转发设备和网络***
CN104980347A (zh) 一种建立隧道的方法及装置
CN105391635A (zh) 一种基于sdn的网络虚拟化方法
CN106161053A (zh) 一种SDN控制器QoS管理***及方法
CN104092611A (zh) 确定跨区域受约束的标签交换路径的方法及装置
US20140185607A1 (en) Communication system, communication path establishing method and management server
US20220210036A1 (en) Network Measurement System And Method, Device, And Storage Medium
CN106487709A (zh) 一种报文发送方法及***
CN105191213A (zh) 网络路径计算方法、装置和***
CN116319336B (zh) 业务报文的转发方法、sr策略的发送方法、设备及***

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
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.

GR01 Patent grant
GR01 Patent grant