CN106713026A - 业务链拓扑结构、业务链设置方法和控制器 - Google Patents
业务链拓扑结构、业务链设置方法和控制器 Download PDFInfo
- Publication number
- CN106713026A CN106713026A CN201611163832.0A CN201611163832A CN106713026A CN 106713026 A CN106713026 A CN 106713026A CN 201611163832 A CN201611163832 A CN 201611163832A CN 106713026 A CN106713026 A CN 106713026A
- Authority
- CN
- China
- Prior art keywords
- switching equipment
- equipment
- port
- node device
- controller
- 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.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/12—Discovery or management of network topologies
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/02—Topology update or discovery
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/25—Routing or path finding in a switch fabric
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/30—Peripheral units, e.g. input or output ports
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明实施例公开了一种业务链拓扑结构、业务链设置方法和控制器,涉及通信领域,用于解决现有业务链根据报文路径来部署业务节点的方式不灵活的问题。业务链拓扑结构,包括:控制器、交换设备和至少一个节点设备,节点设备连接交换设备,控制器连接交换设备,控制器用于基于OpenFlow协议对交换设备进行端口发现,基于对交换设备的端口发现在交换设备中的流表项中,设置业务流流入交换设备的上一个节点设备,并且设置业务流流出交换设备的下一个节点设备,控制交换设备将业务流引流至节点设备,使业务流的流入节点设备和流出节点设备之间连接交换设备,建立上一个节点设备和下一个节点设备之间的业务链。本发明实施例应用于出口解决方案。
Description
技术领域
本发明涉及通信领域,尤其涉及一种业务链拓扑结构、业务链设置方法和控制器。
背景技术
数据报文在网络中传递时,需要经过各种各样的业务节点(例如防火墙、负载均衡器(LB,load balance)等)。当数据报文按照业务逻辑经过这些业务节点时形成了报文传输路径,即称为业务链(service chain)。
现有技术中根据业务链对业务节点(例如防火墙、负载均衡器等)进行部署时,都是与物理网络拓扑紧密相关的,即根据报文路径来部署业务节点,因此一般采用串行连接。例如假设数据报文需要依次经过业务节点A、B和C,就需要将A、B和C串行连接。这样的部署方式不够灵活,例如当需要改变报文路径时就需要改变业务节点的物理连接方式,或者当其中一个业务节点发生故障时,整个业务链会断开。
针对这个问题,现有技术在数据中心网络利用服务器承载虚拟防火墙/负载均衡器等新型网络设备,并将这些虚拟防火墙/负载均衡器部署在逻辑网络的边缘,通过特殊的调度方式将数据流引向这些网络设备进而完成引流操作。或者通过部署物理防火墙,通过隧道引流的方式将数据流引导这些物理设备上,数据流经过防火墙处理后再通过隧道方式引回来继续走原路径。
对于隧道引流方式实现业务链,需要定义一套完整的隧道方式用于适配当前的业务链特性,目前针对业务链相关的标准草案还在制定中,技术还未标准化,因此各厂商或者芯片厂商都还未宣传对该草案的支持情况。并且该草案也还未形成具体的完整解决方案。
对于非隧道引流方式实现业务链,利用了传统的路由或二层转发技术,通过引入新的路由/转发规则将报文引流需要处理的防火墙等设备来实现业务链功能。由于未有标准化的过程,因此各厂商的实现技术没有统一标准,有些采用PBR(policy-based routing,策略路由),有些通过扩展MP-BGP(multi-protocol border gateway protocol,多协议边界网关协议)进行扩展,定义新的NLRI(network layer reachability information,网络层可达信息)来改变传统的路由下一跳行为。还有则使用负载均衡设备来实现,通过负载均衡设备本身的分流功能来完成最终的引流。
发明内容
本发明的实施例提供一种业务链拓扑结构、业务链设置方法和控制器,用于解决现有业务链根据报文路径来部署业务节点的方式不灵活的问题。
为达到上述目的,本发明的实施例采用如下技术方案:
第一方面,提供了一种业务链拓扑结构,包括:控制器、支持业务链的交换设备和至少一个节点设备,所述节点设备连接所述交换设备,所述控制器连接所述交换设备,
所述控制器用于基于与所述交换设备建立的开放流OpenFlow协议对所述交换设备进行端口发现;
所述控制器还用于基于对所述交换设备的端口发现通过在所述交换设备中的流表项中,设置业务流流入所述交换设备的上一个节点设备,并且设置所述业务流流出所述交换设备的下一个节点设备,控制所述交换设备将业务流引流至对应的节点设备,使每一条所述业务流的流入节点设备和流出节点设备之间连接所述交换设备,建立所述上一个节点设备和所述下一个节点设备之间的业务链。
第二方面,提供了一种业务链设置方法,应用于第一方面所述的业务链拓扑结构,包括:
控制器基于与交换设备建立的开放流OpenFlow协议对所述交换设备进行端口发现;
所述控制器基于对所述交换设备的端口发现通过在所述交换设备中的流表项中,设置业务流流入所述交换设备的上一个节点设备,并且设置所述业务流流出所述交换设备的下一个节点设备,控制所述交换设备将业务流引流至对应的节点设备,使每一条所述业务流的流入节点设备和流出节点设备之间连接所述交换设备,建立所述上一个节点设备和所述下一个节点设备之间的业务链。
第三方面,提供了一种控制器,应用于第一方面所述的业务链拓扑结构。
本发明的实施例提供的业务链拓扑结构、业务链设置方法和控制器,通过将各个节点设备直接连接到交换设备上,由控制器基于与所述交换设备建立的开放流OpenFlow协议对所述交换设备进行端口发现;再由控制器还基于对所述交换设备的端口发现通过在所述交换设备中的流表项中,设置业务流流入所述交换设备的上一个节点设备,并且设置所述业务流流出所述交换设备的下一个节点设备,控制所述交换设备将业务流引流至对应的节点设备,使每一条所述业务流的流入节点设备和流出节点设备之间连接所述交换设备,建立所述上一个节点设备和所述下一个节点设备之间的业务链,当需要改变业务链路径时,只要修改流表项即可,不必对整个业务链物理结构进行改变。解决了现有业务链根据报文路径来部署业务节点的方式不灵活的问题。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明的实施例提供的业务链拓扑结构的示意图;
图2为本发明的实施例提供的业务链设置方法的流程示意图;
图3为本发明的实施例提供的业务链拓扑结构一种具体示例的示意图;
图4为本发明的实施例提供的业务链拓扑结构另一种具体示例的示意图;
图5为本发明的实施例提供的负载均衡时的业务流的示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供了一种业务链拓扑结构,参照图1中所示,包括:控制器11、支持业务链的交换设备12和至少一个节点设备13,节点设备13和控制器11连接交换设备12,控制器可以为SDN(软件定义网络,software defined network)控制器,节点设备13可以为防火墙、负载均衡等设备。本发明实施例主要应用在出口解决方案中,包含但不局限于园区网出口、数据中心出口、医疗内外网出口并作为该解决方案的核心技术。
参照图2中所示,为本发明实施例提供的业务链设置方法也即业务链创建过程的示意图,具体包括:
S101、控制器基于与交换设备建立的开放流OpenFlow协议对所述交换设备进行端口发现。
首先,进行初始化配置。具体的,各个设备的初始化过程主要包括:配置控制器的IP(internet protocol,互联网协议)地址,完成SDN控制器控制软件以及高级组件业务链的安装。在交换设备端上配置控制器的IP地址以及管理通道IP地址,使得交换设备到控制器之间管理通路可达。并打开交换设备的远程管理通道,例如配置设备允许telnet(互联网远程登陆服务)等。业务链节点设备物理连接在交换设备的各个端口上。
其次,在控制器和交换设备之间会建立OpenFlow(开放流)连接握手过程,使得控制器能够在网络中发现交换设备。具体的,控制器和交换设备之间建立TCP(transmissioncontrol protocol,传输控制协议)连接后开始OpenFlow协议交互(OpenFlow协议基于TCP),具体包括:首先双方完成Hello握手,交换双方的OpenFlow协议版本信息,然后控制器发送功能请求(feature request)消息去获取交换设备的设备类型、流表能力、端口形态、数量等信息,从而完成对交换设备的发现过程。需要说明的是,控制器和交换设备之间会建立OpenFlow连接握手的过程只能完成支持OpenFlow协议的交换设备的发现过程,对于传统的业务链节点设备是无法通过该过程发现的,需要手工指定。
再次,配置业务链节点设备。具体的,在控制器的WEB界面上可呈现交换设备以及交换设备的各个端口。管理员可以指定交换设备哪些端口连接业务链的节点设备,并设定节点设备的工作模式例如透明模式还是路由模式。当管理员在控制器上完成这些配置后,控制器会将对应的端口配置转换成交换设备支持的界面例如CLI(command-lineinterface,命令行界面),通过预先配置好的管理通道完成对交换设备相关端口的配置。完成这个步骤后就可以在控制器上看到对应的业务链节点设备,并知晓这些节点设备的工作模式和与交换设备关联的端口。并且交换设备也完成相关的配置处于待工作状态。
S102、控制器基于对交换设备的端口发现通过在交换设备中的流表项中,设置业务流流入交换设备的上一个节点设备,并且设置业务流流出交换设备的下一个节点设备,控制交换设备将业务流引流至对应的节点设备,使每一条业务流的流入节点设备和流出节点设备之间连接交换设备,建立上一个节点设备和下一个节点设备之间的业务链。
进行业务链设置,即控制器设置该业务流所需要经过的业务链节点设备以及顺序,业务流在从上一个节点设备流向下一个节点设备时均需经过交换设备进行转发。控制器可以将设置后的流表通过OpenFlow协议下发到交换设备上,以完成后续的引流操作,从而实现将指定业务流按需转发到各个业务链节点设备并最终形成业务链的功能。需要说明的是,当业务流从业务链节点设备回流到交换设备且不需要再经过其他业务链节点设备时,这时的转发规则还是按照传统方式生成的路由、二层转发规则来转发,不受控制器控制。
而由于目前业界业务节点通常支持路由模式和透明模式或这两种模式之一(即使两种模式都支持,工作时也只能处于其中一种模式),因此将具体针对这两种模式以三层业务流转发过程进行详细介绍。
路由模式下的业务链引流。路由模式指的是业务链节点设备本身具备三层转发功能,其与交换设备之间互联通道需要配置IP地址,交换设备通过三层路由的方式将报文发送至这些节点设备,报文从这些节点设备返回交换设备时也是通过三层路由的方式。
每个节点设备连接交换设备的一对输出端口和输入端口,参照图3中所示,假设P1、P2属于SVI(switch virtual interface,交换机虚拟接口)下的两个成员口;P3-P7属于路由口,其中,P3、P4与对应的节点设备13连接,P5、P6与对应的节点设备14连接,P3和P5属于交换设备的输出端口,P4和P6属于交换设备12的输入端口,示例性的,节点设备13可以是FW(firewall,防火墙),节点设备14可以为WAF(web application firewall,web应用防火墙)。控制器11通过MGMT(management,管理)端口与交换设备连接,用于向交换设备传递配置命令和OpenFlow流表。
首先,进行ARP(address resolution protocol,地址解析协议)学习。节点设备13和节点设备14完成IP配置和网关配置后会向交换设备12请求对应ARP信息,这时的ARP请求由交换设备12进行应答,该过程与传统流程一致。在此不再赘述。
但是,由于控制器后续下发的流表可能需要用到节点设备13和节点设备14的MAC(media access control,媒体访问控制)地址,因此控制器需要获取节点设备13和节点设备14的ARP信息。但是,如果如无特殊表项设置的话,节点设备13和节点设备14的ARP应答会被交换设备12本身的ARP模块拦截,因此需要控制器11在流表项的动作域(Action)中,设置输出端口字段(Output_Port)为交换设备的与控制器对应的输出端口,示例如表1中所示。
表1
在表1中,In_Port表示输入端口字段,Ether_Type字段表示业务流的以太帧类型字段。
交换设备在收到这些流表之后,通过OpenFlow PI模块将这些流表最终设置到交换芯片上(到芯片上的流表转义成CPU的行为,由OpenFlow PI模块接收这个ARP Reply报文,并转换成OpenFlow Packet_in报文上送控制器)。
控制器完成流表下发后,通过OpenFlow Packet_out消息将发给节点设备13和节点设备14的ARP Request(请求)报文发送给交换设备,交换设备的OpenFlow PI模块将OpenFlow Packet_out报文中的ARP请求解析出来并通过交换设备发送到节点设备13和节点设备14上,当节点设备13和节点设备14应答ARP Reply(回复)后,该报文会根据上述设置的流表项送到交换设备的CPU继而通过OpenFlow PI模块最终发送到控制器上,从而控制器完成节点设备13和节点设备14的ARP学习。
路由模式下的三层转发。具体的,假设存在一条从P1输入的业务流需要三层转发到P7接口。在控制器上构建业务链使得最终P1-P7的业务流经过如下路径:P1-P3-P4-P5-P6-P7。需要说明的是,不会改变原有业务流在交换设备上的出口,只是将该业务流流经节点设备的路径做了改变。
此时,在流表项的匹配域(Match)中,设置输入端口字段(In_Port)为交换设备的与上一个节点设备相对应的输入端口,并且设置以太帧类型字段(Ether_Type)为该业务流的类型;在流表项的动作域(Action)中,设置输出端口字段(Output_Port)为交换设备的与下一个节点设备相对应的输出端口;同时,在流表项的动作域(Action)中,设置源MAC地址(SET_SMAC)为交换设备的MAC地址,设置目标MAC地址(SET_DMAC)为下一个节点设备的MAC地址。示例如表2中所示:
表2
在表2中,Switch_MAC表示交换设备的MAC地址,FW_MAC表示节点设备13的MAC地址,WAF_MAC表示节点设备14的MAC地址。
同样通过交换设备的OpenFlow PI模块经由交换适配层将这两条流表项设置到交换芯片上(对应的VLAN(virtual local area network,虚拟局域网)信息由交换适配层根据P3、P5的VLAN自行添加上,控制器并不感知P3、P5路由口的VLAN信息)。
透明模式下的业务链引流。透明模式指的是业务链节点设备本身具备透明传输功能(原报文进原报文出),其与交换设备之间互联通道无需配置IP地址,双方以桥式Bridge(Trunk口)方式互联。交换设备和这些节点设备之间的报文交互都和报文从源口输入时的内容一致。这点有别于路由模式,路由模式下交换设备和这些节点设备之间的交互报文与输入报文是不一致的,二层端口的源MAC地址、目的MAC地址都已经发生变化。
首先由控制器对交换设备的各个端口进行预先配置,P3、P4、P5、P6这些端口的配置需要通过控制器的Telnet/TR069等方式下发到交换设备上,配置完后P3、P4、P5、P6这些输出端口和输入端口需要具备如下属性:属于所有VLAN;不进行VLAN检查;不进行地址学习;不对VLAN进行添加删除;P4、P6输入端口对于输入报文为二层广播、未知名单播时丢弃该输入报文。
透明模式下的三层转发。具体的,假设存在一条从P1输入的业务流需要三层转发到P7接口。在控制器上构建业务链使得最终P1-P7的业务流经过如下路径:P1-P3-P4-P5-P6-P7。需要说明的是,不会改变原有业务流在交换设备上的出口,只是将该业务流流经节点设备的路径做了改变。
此时,在流表项的匹配域(Match)中,设置输入端口字段(In_Port)为交换设备的与上一个节点设备相对应的输入端口,并且设置以太帧类型字段(Ether_Type)为该业务流的类型;在流表项的动作域(Action)中,设置输出端口字段(Output_Port)为交换设备的与下一个节点设备相对应的输出端口;示例如表3中所示:
表3
流名称 | 匹配域(Match) | 动作域(Action) |
Flow1 | In_Port==P1&&业务流特征 | Output_Port=P3 |
Flow2 | In_Port==P4&&业务流特征 | Output_Port=P5 |
同样通过Switch端的OpenFlow PI模块经由交换适配层将这两条流表项设置到交换芯片上。
原始报文从P1口输入交换设备后若匹配Flow1流表项,则会以类似重定向的方式将报文转发到交换设备的P3口,由于P3口归属所有VLAN并且不剥离任何VLAN,因此从P3口输出的报文带的还是P1口输入时带上的VLAN信息。
当报文从P3输出流经P4回到交换设备后,由于P4端口被配置成不进行VLAN检查同时不修改报文的VLAN,所以到达交换设备内部时报文带的VLAN信息还是从P1输入的VLAN信息。若匹配Flow2流表,则同样会以类似重定向的方式将报文转发到P5口,由于P5口归属所有VLAN并且不剥离任何VLAN,因此从P5口输出的报文带的还是P1口输入时带上的VLAN信息。
当报文流从P5输出流经P6返回交换设备后,由于这时不会有额外的匹配表项并且报文还保持着P1口输入时的VLAN信息,因此这个报文将按传统的路由方式将报文路由到P7口发送出去。
负载均衡的引流。由于本发明实施例提供的业务链在部署扩展性上的天然优势,可以通过扩展节点设备(例如防火墙设备)来解决单一节点设备(例如防火墙设备)性能不足的问题,而扩展出的节点设备(例如防火墙设备)在功能上与原先的节点设备(例如防火墙设备)一样。
此时,需要控制器在交换设备的流表项中,设置进行负载均衡的多个节点设备归属于一组,并且在流表项的动作域(Action)中,设置目标MAC地址(SET_DMAC)为从进行负载均衡的多个节点设备的MAC地址中选择一个(Select One)。
参照图4中所示,假设节点设备13和节点设备14是功能相同的节点设备,对这二者进行负载均衡。同样地,P1、P2属于同一个SVI下的两个物理端口、P9是其它的三层端口。以下场景以路由模式为例详细介绍如下。
当处于路由模式时,上述路由模式下的业务链引流的原理以及限制同样生效,此处只针对负载均衡如何在路由模式下工作给出描述,假设从P1-P9的某条三层转发业务链如图5中所示,这时控制器下发表4中所示的流表项给交换设备:
表4
在表4中,Switch_MAC表示交换设备的MAC地址,FW1_MAC表示节点设备13的MAC地址,FW2_MAC表示节点设备14的MAC地址,WAF_MAC表示节点设备15的MAC地址。
首先控制器下发组规则(Group1),该组规则选择从端口1输入具有某种特征的业务流,从端口P3、P5选择之一(Select One)输出,同时修改对应的SMAC、DMAC、VLAN为指定值。在交换设备需要转义成ECMP(equal-cost multipath routing,等价多路径路由)的方式完成。由于控制器无法指定散列规则,因此散列的方式由交换芯片本身决定。由于控制器无法掌握该业务流会走P3、P5哪条路径,因此在下一个规则设置时必须同步两条表项(Flow1和Flow2),使得特征报文无论从P4还是P6输入都将继续走P7端口。
具体的,与路由模式下的业务链引流不同的地方主要在于在交换侧多了个按芯片散列规则的ECMP过程。当从P4、P6的数据流回流到交换设备时,需要分别与Flow1、Flow2流表项进行匹配后才能继续后续的转发规则。
本发明实施例提供的业务链拓扑结构、业务链设置方法和控制器,通过将各个节点设备直接连接到交换设备上,由控制器基于与所述交换设备建立的开放流OpenFlow协议对所述交换设备进行端口发现;再由控制器还基于对所述交换设备的端口发现通过在所述交换设备中的流表项中,设置业务流流入所述交换设备的上一个节点设备,并且设置所述业务流流出所述交换设备的下一个节点设备,控制所述交换设备将业务流引流至对应的节点设备,使每一条所述业务流的流入节点设备和流出节点设备之间连接所述交换设备,建立所述上一个节点设备和所述下一个节点设备之间的业务链,当需要改变业务链路径时,只要修改流表项即可,不必对整个业务链物理结构进行改变。解决了现有业务链根据报文路径来部署业务节点的方式不灵活的问题。
另外,本发明实施例,可以解决原有安全路径上的单点故障,伸缩性部署难的问题,加快网络规划和实施的速率;同时支持不同品牌间安全设备负载,提高了专用应用层安全设备(例如WAF、FW等)利用率,降低网络构建的成本。
应理解,在本发明的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、设备和方法,可以通过其它的方式实现。例如,以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(英文全称:read-only memory,英文简称:ROM)、随机存取存储器(英文全称:random access memory,英文简称:RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
Claims (11)
1.一种业务链拓扑结构,其特征在于,包括:控制器、支持业务链的交换设备和至少一个节点设备,所述节点设备连接所述交换设备,所述控制器连接所述交换设备,
所述控制器用于基于与所述交换设备建立的开放流OpenFlow协议对所述交换设备进行端口发现;
所述控制器还用于基于对所述交换设备的端口发现通过在所述交换设备中的流表项中,设置业务流流入所述交换设备的上一个节点设备,并且设置所述业务流流出所述交换设备的下一个节点设备,控制所述交换设备将业务流引流至对应的节点设备,使每一条所述业务流的流入节点设备和流出节点设备之间连接所述交换设备,建立所述上一个节点设备和所述下一个节点设备之间的业务链。
2.根据权利要求1所述的业务链拓扑结构,其特征在于,每个节点设备连接所述交换设备的一对输出端口和输入端口,所述控制器,具体用于:
配置所述输出端口和输入端口,令所述输出端口和输入端口属于所有虚拟局域网VLAN;不进行VLAN检查;不进行地址学习;不对VLAN进行添加删除;并且配置所述输入端口对于输入报文为二层广播、未知名单播时丢弃所述输入报文;
在所述流表项的匹配域Match中,设置输入端口字段In_Port为所述交换设备的与所述上一个节点设备相对应的输入端口,并且设置以太帧类型字段Ether_Type为所述业务流的类型;
在所述流表项的动作域Action中,设置输出端口字段Output_Port为所述交换设备的与所述下一个节点设备相对应的输出端口。
3.根据权利要求1所述的业务链拓扑结构,其特征在于,每个节点设备连接所述交换设备的一对输出端口和输入端口,所述控制器,具体用于:
在所述流表项的匹配域Match中,设置输入端口字段In_Port为所述交换设备的与所述上一个节点设备相对应的输入端口,并且设置以太帧类型字段Ether_Type为所述业务流的类型;
在所述流表项的动作域Action中,设置输出端口字段Output_Port为所述交换设备的与所述下一个节点设备相对应的输出端口;
在所述流表项的动作域Action中,设置源MAC地址SET_SMAC为所述交换设备的MAC地址,设置目标MAC地址SET_DMAC为所述下一个节点设备的MAC地址。
4.根据权利要求3所述的业务链拓扑结构,其特征在于,所述控制器,还用于:
在所述流表项的动作域Action中,设置输出端口字段Output_Port为所述交换设备的与所述控制器对应的输出端口。
5.根据权利要求2-4中任一项所述的业务链拓扑结构,其特征在于,所述控制器,还用于:
在所述流表项中设置进行负载均衡的多个节点设备归属于一组,并且在所述流表项的动作域Action中,设置目标MAC地址SET_DMAC为从进行负载均衡的多个节点设备的MAC地址中选择一个。
6.一种业务链设置方法,应用于权利要求1-5中任一项所述的业务链拓扑结构,其特征在于,包括:
控制器基于与交换设备建立的开放流OpenFlow协议对所述交换设备进行端口发现;
所述控制器基于对所述交换设备的端口发现通过在所述交换设备中的流表项中,设置业务流流入所述交换设备的上一个节点设备,并且设置所述业务流流出所述交换设备的下一个节点设备,控制所述交换设备将业务流引流至对应的节点设备,使每一条所述业务流的流入节点设备和流出节点设备之间连接所述交换设备,建立所述上一个节点设备和所述下一个节点设备之间的业务链。
7.根据权利要求6所述的方法,其特征在于,所述在所述交换设备中的流表的流表项中,设置业务流流入所述交换设备的上一个节点设备,并且设置所述业务流流出所述交换设备的下一个节点设备,包括:
配置每个节点设备连接的交换设备的一对输出端口和输入端口,令所述输出端口和输入端口属于所有虚拟局域网VLAN;不进行VLAN检查;不进行地址学习;不对VLAN进行添加删除;并且配置所述输入端口对于输入报文为二层广播、未知名单播时丢弃所述输入报文;
在所述流表项的匹配域Match中,设置输入端口字段In_Port为所述交换设备的与所述上一个节点设备相对应的输入端口,并且设置以太帧类型字段Ether_Type为所述业务流的类型;
在所述流表项的动作域Action中,设置输出端口字段为所述交换设备的与所述下一个节点设备相对应的输出端口。
8.根据权利要求6所述的方法,其特征在于,所述方法还包括:
在所述流表项的匹配域Match中,设置输入端口字段In_Port为所述交换设备的与所述上一个节点设备相对应的输入端口,并且设置以太帧类型字段Ether_Type为所述业务流的类型;
在所述流表项的动作域Action中,设置输出端口字段Output_Port为所述交换设备的与所述下一个节点设备相对应的输出端口;
在所述流表项的动作域Action中,设置源MAC地址SET_SMAC为所述交换设备的MAC地址,设置目标MAC地址SET_DMAC为所述下一个节点设备的MAC地址。
9.根据权利要求8所述的方法,其特征在于,所述方法还包括:
在所述流表项的动作域Action中,设置输出端口字段Output_Port为所述交换设备的与所述控制器对应的输出端口。
10.根据权利要求7-9中任一项所述的方法,其特征在于,所述方法还包括:
设置进行负载均衡的多个节点设备归属于一组,并且在所述流表项的动作域Action中,设置目标MAC地址SET_DMAC为从进行负载均衡的多个节点设备的MAC地址中选择一个。
11.一种控制器,其特征在于,应用于权利要求1-5中任一项所述的业务链拓扑结构。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611163832.0A CN106713026A (zh) | 2016-12-15 | 2016-12-15 | 业务链拓扑结构、业务链设置方法和控制器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611163832.0A CN106713026A (zh) | 2016-12-15 | 2016-12-15 | 业务链拓扑结构、业务链设置方法和控制器 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106713026A true CN106713026A (zh) | 2017-05-24 |
Family
ID=58937909
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611163832.0A Pending CN106713026A (zh) | 2016-12-15 | 2016-12-15 | 业务链拓扑结构、业务链设置方法和控制器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106713026A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107171852A (zh) * | 2017-06-15 | 2017-09-15 | 烽火通信科技股份有限公司 | 基于OpenFlow的二层业务配置系统及其方法 |
CN107645458A (zh) * | 2017-10-20 | 2018-01-30 | 锐捷网络股份有限公司 | 三层报文引流方法及控制器 |
CN108289061A (zh) * | 2017-12-29 | 2018-07-17 | 江苏省未来网络创新研究院 | 基于sdn的业务链编排方法及业务链拓扑结构 |
CN110636003A (zh) * | 2018-06-21 | 2019-12-31 | 中国电信股份有限公司 | 报文转发方法、装置、系统和计算机可读存储介质 |
CN111371682A (zh) * | 2020-02-21 | 2020-07-03 | 中国科学技术大学苏州研究院 | 基于多层标签的中间件网络中可扩展性路由方法 |
CN115695086A (zh) * | 2022-09-19 | 2023-02-03 | 中电信数智科技有限公司 | 一种基于vlan网络实现服务链功能的系统及方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103929368A (zh) * | 2014-05-05 | 2014-07-16 | 华为技术有限公司 | 多业务单元负载均衡方法及装置 |
CN105099917A (zh) * | 2014-05-08 | 2015-11-25 | 华为技术有限公司 | 业务报文的转发方法和装置 |
CN105519058A (zh) * | 2014-11-10 | 2016-04-20 | 华为技术有限公司 | 控制器、服务节点和数据包转发方法 |
CN105591805A (zh) * | 2015-09-28 | 2016-05-18 | 杭州华三通信技术有限公司 | 一种修改服务链配置的方法和装置 |
US20160212048A1 (en) * | 2015-01-15 | 2016-07-21 | Hewlett Packard Enterprise Development Lp | Openflow service chain data packet routing using tables |
-
2016
- 2016-12-15 CN CN201611163832.0A patent/CN106713026A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103929368A (zh) * | 2014-05-05 | 2014-07-16 | 华为技术有限公司 | 多业务单元负载均衡方法及装置 |
CN105099917A (zh) * | 2014-05-08 | 2015-11-25 | 华为技术有限公司 | 业务报文的转发方法和装置 |
CN105519058A (zh) * | 2014-11-10 | 2016-04-20 | 华为技术有限公司 | 控制器、服务节点和数据包转发方法 |
US20160212048A1 (en) * | 2015-01-15 | 2016-07-21 | Hewlett Packard Enterprise Development Lp | Openflow service chain data packet routing using tables |
CN105591805A (zh) * | 2015-09-28 | 2016-05-18 | 杭州华三通信技术有限公司 | 一种修改服务链配置的方法和装置 |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107171852A (zh) * | 2017-06-15 | 2017-09-15 | 烽火通信科技股份有限公司 | 基于OpenFlow的二层业务配置系统及其方法 |
CN107171852B (zh) * | 2017-06-15 | 2019-11-08 | 烽火通信科技股份有限公司 | 基于OpenFlow的二层业务配置系统及其方法 |
CN107645458A (zh) * | 2017-10-20 | 2018-01-30 | 锐捷网络股份有限公司 | 三层报文引流方法及控制器 |
CN107645458B (zh) * | 2017-10-20 | 2020-04-24 | 锐捷网络股份有限公司 | 三层报文引流方法及控制器 |
CN108289061A (zh) * | 2017-12-29 | 2018-07-17 | 江苏省未来网络创新研究院 | 基于sdn的业务链编排方法及业务链拓扑结构 |
CN110636003A (zh) * | 2018-06-21 | 2019-12-31 | 中国电信股份有限公司 | 报文转发方法、装置、系统和计算机可读存储介质 |
CN111371682A (zh) * | 2020-02-21 | 2020-07-03 | 中国科学技术大学苏州研究院 | 基于多层标签的中间件网络中可扩展性路由方法 |
CN115695086A (zh) * | 2022-09-19 | 2023-02-03 | 中电信数智科技有限公司 | 一种基于vlan网络实现服务链功能的系统及方法 |
CN115695086B (zh) * | 2022-09-19 | 2024-01-19 | 中电信数智科技有限公司 | 一种基于vlan网络实现服务链功能的系统及方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106713026A (zh) | 业务链拓扑结构、业务链设置方法和控制器 | |
CN104243270B (zh) | 一种建立隧道的方法和装置 | |
CN104243317B (zh) | 一种实现ip路由转发的方法和装置 | |
CN106789542B (zh) | 一种云数据中心安全服务链的实现方法 | |
CN102884763B (zh) | 跨数据中心的虚拟机迁移方法、服务控制网关及系统 | |
CN104283791B (zh) | 一种sdn网络中的三层拓扑确定方法和设备 | |
US7145878B2 (en) | Avoiding overlapping segments in transparent LAN services on ring-based networks | |
CN106936777A (zh) | 基于OpenFlow的云计算分布式网络实现方法、系统 | |
US7961738B2 (en) | Method for accessing virtual private network, virtual private system, virtual private network and provider edge device thereof | |
TWI639325B (zh) | 自動配置的交換機、自動配置交換機的方法、交換機自動部署的軟體定義網路系統及其方法 | |
CN102739501B (zh) | 二三层虚拟私有网络中的报文转发方法和系统 | |
CN103152267A (zh) | 路由管理方法及路由方法及网络控制器及路由器 | |
CN108289061B (zh) | 基于sdn的业务链拓扑系统 | |
CN105162704A (zh) | Overlay网络中组播复制的方法及装置 | |
CN108234200B (zh) | 基于接入环的通信处理方法和装置 | |
KR101658824B1 (ko) | 소프트웨어 정의 네트워크에서 플로우 룰을 변경하는 방법, 장치 및 컴퓨터 프로그램 | |
CN107911297A (zh) | 一种sdn网络带内控制通道建立方法及设备 | |
CN108141392A (zh) | 伪线负载分担的方法和设备 | |
CN107040441A (zh) | 跨数据中心的数据传输方法、装置及系统 | |
CN104092684A (zh) | 一种OpenFlow协议支持VPN的方法及设备 | |
US20030169694A1 (en) | Use of alternate ports in spanning tree configured bridged virtual local area networks | |
CN105763439B (zh) | 一种多链接透明互联网络中数据中心的互联方法及装置 | |
CN106936704A (zh) | 使用逐跳虚拟局域网分类进行多路径交换 | |
CN103534985B (zh) | 业务负载分配方法、装置和通信系统 | |
WO2014069502A1 (ja) | 通信システム、経路情報交換装置、通信ノード、経路情報の転送方法及びプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination |