CN107666447B - 数据流的处理方法和装置 - Google Patents
数据流的处理方法和装置 Download PDFInfo
- Publication number
- CN107666447B CN107666447B CN201610606046.7A CN201610606046A CN107666447B CN 107666447 B CN107666447 B CN 107666447B CN 201610606046 A CN201610606046 A CN 201610606046A CN 107666447 B CN107666447 B CN 107666447B
- Authority
- CN
- China
- Prior art keywords
- node
- chain
- identification
- data stream
- flow
- 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
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/20—Traffic policing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/66—Arrangements for connecting between networks having differing types of switching systems, e.g. gateways
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请提供了数据流的处理方法和装置。本申请中,通过对流分类节点和代理转发节点的数据流转发进行改进,最终将首节点访问尾节点的数据流引入至首节点访问尾节点所经由的服务节点中,而非现有技术由SDN控制器控制指导数据流的转发,这一方面减轻了SDN控制器的负荷,对SDN控制器的可靠性要求不高,也避免SDN控制器在数据流经由的各服务节点下发服务转发策略带来的缺陷。
Description
技术领域
本申请涉及网络通信技术,特别涉及数据流的处理方法和装置。
背景技术
数据流在网络中传输时,需要经过各种各样的服务节点,以实现安全、快速、稳定的传输。这里的服务节点,是指为数据流提供服务的节点,比如防火墙节点、入侵检测节点、负载均衡节点等。
数据流在传输过程中经由的服务节点组成了一个服务链(Service Chain)。如图1所示,服务链的典型场景为:WEB访问APP需要依次经过防火墙节点(FW)和负载均衡节点(LB)组成的服务链。
在软件定义网络(SDN:Software Defined Network)中,SDN控制器作为控制平面既为服务节点下发开放流(Openflow)表项以指导服务节点转发数据流,又为服务节点下发对应的服务转发策略以指导服务节点为数据流提供服务和执行转发处理,这加大了SDN控制器的负荷,并且对SDN控制器的可靠性要求很高。
发明内容
本申请提供了数据流的处理方法和装置,以避免SDN控制器为服务节点下发服务转发策略带来的缺陷。
本申请提供的技术方案包括:
一种数据流的处理方法,该方法应用于网关设备,该方法包括:
探测节点标识链上每一节点标识对应的节点是否上线,所述节点标识链由首节点的节点标识、首节点访问尾节点依次经由的服务节点的节点标识、以及尾节点的节点标识串链得到;
当探测到所述每一节点标识对应的节点上线,则,
当所述网关设备为首节点接入的网关设备时,下发与所述节点标识链相关联的第一流分类策略至本设备硬件,当接收到首节点访问尾节点的数据流时,依据所述第一流分类策略引导所述数据流按照所述节点标识链转发;当所述网关设备为所述服务节点接入的网关设备时,下发与所述节点标识链相关联的第二流分类策略至本设备硬件,当接收到首节点访问尾节点的数据流时,依据第二流分类策略引导所述数据流按照所述节点标识链转发。
一种数据流的处理装置,该装置网关设备,该装置包括:
探测单元,用于探测节点标识链上每一节点标识对应的节点是否上线,所述节点标识链由首节点的节点标识、首节点访问尾节点依次经由的服务节点的节点标识、以及尾节点的节点标识串链得到;
控制单元,用于当探测单元探测到每一节点标识对应的节点上线,则,
当所述网关设备为首节点接入的网关设备时,下发与所述节点标识链相关联的第一流分类策略至本设备硬件,当接收到首节点访问尾节点的数据流时,依据第一流分类策略引导所述数据流按照所述节点标识链转发;以及,当所述网关设备为所述服务节点接入的网关设备时,下发与所述节点标识链相关联的第二流分类策略至本设备硬件,当接收到首节点访问尾节点的数据流时,依据第二流分类策略引导所述数据流按照所述节点标识链转发。
由以上技术方案可以看出,本发明中,通过节点标识链、与节点标识链相关联的第一流分类策略对首节点接入的网关设备的数据流转发进行改进,通过节点标识链、与节点标识链相关联的第二流分类策略对服务节点接入的网关设备的数据流转发进行改进,最终由首节点接入的网关设备和服务节点接入的网关设备相互结合引导首节点访问尾节点的数据流按照节点标识链转发,而非现有技术由SDN控制器控制指导数据流的转发,这一方面减轻了SDN控制器的负荷,对SDN控制器的可靠性要求不高,也避免SDN控制器在数据流经由的各服务节点下发服务转发策略带来的缺陷。
附图说明
图1为服务链组网示意图;
图2为本申请提供的方法流程图;
图3为本发明实施例提供的VXLAN封装示意图;
图4为本申请提供的实施例组网图;
图5为本申请提供的装置结构图;
图6为本申请提供的图5所示装置的硬件结构图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面结合附图和具体实施例对本发明进行详细描述。
参见图2,图2为本申请提供的方法流程图。该流程应用于首节点访问尾节点所经由的网关设备。在本申请中,当确定首节点需要访问尾节点时,会基于路由协议确定出首节点访问尾节点的路径。该路径包含上述的网关设备,也包含一系列的服务节点。
在本申请中,上述的网关设备具体实现时可为首节点接入的网关设备或者服务节点接入的网关设备。其中,首节点接入的网关设备不直接连接服务节点,需通过服务节点接入的网关设备连接服务节点。应用于以太网虚拟专用网络(EVPN:Ethernet VirtualPrivate Network),这里的首节点可为EVPN中的其中一个虚拟机(VM),尾节点为EVPN中的另一个VM,网关设备具体为EVPN分布式网关设备。
下文步骤203描述了网关设备作为首节点接入的网关设备时执行的操作,步骤204描述了网关设备作为服务节点接入的网关设备时执行的操作。
如图2所示,该流程可包括以下步骤:
步骤201,探测节点标识链上每一节点标识对应的节点是否上线。
如上描述,首节点访问尾节点的路径包含上述的网关设备和一个以上服务节点。基于此,在本申请中,将首节点的节点标识、首节点访问尾节点依次经由的服务节点的节点标识、以及尾节点的节点标识串链即形成了上述首节点访问尾节点的节点标识链。具体地,首节点的节点标识可唯一表征首节点,比如首节点的IP地址、MAC地址等,首节点访问尾节点依次经由的服务节点的节点标识、尾节点的节点标识类似。在本申请中,首节点访问尾节点的节点标识链具有惟一的节点标识链标识,并且其与首节点访问尾节点的数据流匹配。作为一个实施例,具体地,首节点访问尾节点的节点标识链与首节点访问尾节点的数据流匹配可为:设定一个ACL规则,该ACL规则中包含了首节点访问尾节点的数据流的特征参数与首节点访问尾节点的节点标识链的标识,这里的特征参数可为:数据流的五元组(源IP地址、目的IP地址、源端口号、目的端口号、端口协议)、数据流的源MAC地址和目的MAC地址等,本申请并不具体限定。
作为一个实施例,在本申请中,可基于现有的地址解析协议(ARP:AddressResolution Protocol)、或者Internet控制报文协议(ICMP:Internet Control MessageProtocol)探测首节点访问尾节点的节点标识链上每一节点标识对应的节点是否上线,具体探测方式类似现有上线探测,不再详细描述。
步骤202,若探测到每一节点标识对应的节点上线,则当网关设备为首节点接入的网关设备时,执行步骤203,当网关设备为服务节点接入的网关设备时,执行步骤204。
步骤203,下发与节点标识链相关联的第一流分类策略至本设备硬件,当接收到首节点访问尾节点的数据流时,依据第一流分类策略引导该数据流按照所述节点标识链转发。
在本申请中,作为一个实施例,第一流分类策略可预先配置在本设备的软件层。作为另一个实施例,第一流分类策略可预先从SDN控制器获取并存储在设备软件层。
作为一个优选实施例,上述的设备软件层可为设备的存储器等软件单元;而上述的设备硬件可为转发芯片等硬件单元。需要说明的是,这里只是对设备软件层、设备硬件的举例描述,本申请并不限定。
具体地,本步骤203中依据第一流分类策略引导首节点访问尾节点的数据流按照节点标识链转发具体为:
A1,在本地找到首节点访问尾节点的数据流匹配的节点标识链。
如上举例描述,ACL规则包含了节点标识链的标识和数据流的特征参数。基于该举例描述,作为一个实施例,步骤A1中,以首节点访问尾节点的数据流携带的特征参数为关键字在所有ACL规则中找到包含该关键字的ACL规则,将该找到的ACL规则中的节点标识链标识所对应的节点标识链作为首节点访问尾节点的数据流匹配的节点标识链。该匹配的节点标识链即为上述首节点访问尾节点的节点标识链。
步骤A2,为数据流封装匹配到的节点标识链的标识。
作为一个实施例,当本申请应用于EVPN中,则本步骤A1中,为数据流封装节点标识链的标识,可借助可扩展虚拟局域网络(VXLAN)封装头实现,具体为:在数据流上增加VXLAN封装头,VXLAN封装头中的其中一个预留字段携带了节点标识链的标识,这实现了为数据流封装节点标识链标识的操作。图3所示VXLAN封装头中的预留字段1携带了节点标识链的标识。
A2,将封装了节点标识链标识的数据流重定向至满足以下条件的网关设备:接入了节点标识链上第二个节点标识对应的服务节点。
具体地,步骤A2可为:
将封装了节点标识链标识的数据流通过本地出端口转发,该出端口为连接节点标识链上第二个节点标识对应的服务节点的端口。
当首节点接入的网关设备通过步骤A2转发封装了节点标识链标识的数据流后,节点标识链上第二个节点标识对应的服务节点接入的网关设备就会通过伪线(PW)端口接收到该封装了节点标识链标识的数据流。
步骤204,下发与节点标识链相关联的第二流分类策略至本设备硬件,当接收到首节点访问尾节点的数据流时,依据第二流分类策略引导首节点访问尾节点的数据流按照所述节点标识链转发。
在本申请中,作为一个实施例,第二流分类策略可预先配置在本设备的软件层。作为另一个实施例,第二流分类策略可预先从SDN控制器获取并存储在设备软件层。
具体地,本步骤204中依据第二流分类策略引导首节点访问尾节点的数据流按照所述节点标识链转发包括:
B1,当通过本地PW端口接收到首节点访问尾节点的数据流时,则执行步骤B2,当通过本地连接服务节点的服务端口接收到首节点访问尾节点的数据流时,执行步骤B3。
步骤B2,在本地找到与数据流封装的节点标识链标识对应的节点标识链,对数据流进行解封装,并将解封装后的数据流发送至该找到的节点标识链中第二个节点标识对应的服务节点。
当服务节点接入的网关设备通过PW端口接收到数据流时,基于上述步骤A2的描述,可以得出该数据流封装了节点标识链标识。基于此,本步骤B2中,基于数据流封装的节点标识链标识在本地已存储的所有节点标识链中找到与该节点标识链标识对应的节点标识链,之后对数据流进行解封装(恢复了首节点发送的访问尾节点的原始数据流),将解封装后的数据流(也即首节点发送的访问尾节点的原始数据流)发送至该找到的节点标识链中第二个节点标识对应的服务节点。最终将首节点发送的访问尾节点的原始数据流引入至服务节点,以使服务节点为数据流执行服务处理。当服务节点针对数据流执行完服务处理后,服务节点将处理后的数据流发送给其接入的网关设备。
步骤B3,当通过本地连接服务节点的服务端口接收到数据流时,在本地找到数据流匹配的节点标识链,根据找到的节点标识链确定下一跳标识,当下一跳标识为尾节点的节点标识时,将数据流重定向至所述尾节点接入的网关设备,否则,将数据流发送至下一跳标识对应的服务节点,下一跳为所述节点标识链上当前服务节点标识的下一个节点标识,当前服务节点标识为所述服务端口连接的服务节点的标识。
当服务节点接入的网关设备通过本地服务端口接收到数据流,如上述步骤B2描述,则意味着该数据流是由服务节点发送过来的。基于此,本步骤B3中,会先在本地找到数据流匹配的节点标识链。其中,在本地找到数据流匹配的节点标识链具体如上文描述,这里不再赘述。这里匹配到的节点标识链为上述首节点访问尾节点的节点标识链。
之后,如步骤B3描述的,服务节点接入的网关设备根据找到的节点标识链确定下一跳标识,当下一跳标识为尾节点的节点标识时,将数据流重定向至尾节点接入的网关设备,否则,将数据流发送至下一跳标识对应的服务节点,下一跳标识为节点标识链上当前服务节点标识的下一个节点标识,当前服务节点标识为上述收到数据流的服务端口所连接的服务节点的标识。
具体地,应用于EVPN,上述将数据流重定向至尾节点接入的网关设备可为:对数据流进行VXLAN封装,将封装后的数据流转发至尾节点接入的网关设备。
通过图2所示流程可以看出,首节点访问尾节点的服务节点只对数据流进行网络服务,并不对数据流进行封装,节省硬件表项资源。
至此,完成图2所示的流程。
下面以EVPN为例对图2所示流程进行举例描述:
参见图4,图4为本申请提供的实施例组网图。在如图4所示的组网中以VM1访问VM2为例,则VM1为首节点,VM2为尾节点。
当VM1访问VM2时,基于路由协议确定VM1访问VM2时依次经由服务节点1至n。
基于此,在本实施例中,将VM1的标识、VM1访问VM2依次经由的服务节点1至n的标识、以及VM2的标识串链形成VM1访问VM2的节点标识链,这里该串成的节点标识链记为链1。
假如VM1的标识为VM1的IP地址(记为IP0)、VM2的标识为VM2的IP地址(记为IP(2n+1)),假如服务节点1的节点标识为IP1、IP2,IP1为VM1访问VM2的访问路径在服务节点1上的入端口的标识,IP2为VM1访问VM2的访问路径在服务节点1上的出端口的标识,服务节点2的节点标识为IP3、IP4,IP3为VM1访问VM2的访问路径在服务节点2上的入端口的标识,IP4为VM1访问VM2的访问路径在服务节点2上的出端口的标识,依次类推,服务节点n的节点标识为IP(2n-1)、IP(2n),其中,IP(2n-1)为VM1访问VM2的访问路径在服务节点n上的入端口的标识,IP(2n)为VM1访问VM2的访问路径在服务节点2n上的出端口的标识,则图4中,链1具体为:
IP0-IP1-IP2-IP3-IP4-……-IP(2n-1)-IP(2n)-IP(2n+1)。
在图4中,上述VM1访问VM2的访问路径还会经由流分类节点、代理转发节点1和代理转发节点2。这里流分类节点、代理转发节点1和代理转发节点2相当于EVPN分布式网关设备。其中,流分类节点为首节点VM1接入的网关设备,代理转发节点2为服务节点接入的网关设备,代理转发节点2为尾节点接入的网关设备。
在本实施例中,流分类节点、代理转发节点1预先配置链1。在本实施例中,代理转发节点2,为VM1访问VM2的最后一个代理转发节点,因为直连目的端VM2,只要能够正常转发数据流给目的端VM2即可,在本实施例并不对代理转发节点2的数据流转发进行改进,因此在本实施例并不预先配置链1。
流分类节点、代理转发节点1探测链1上各IP地址对应的设备即VM1、服务节点1至n、VM2是否均上线。在初始,链1上各IP地址对应的设备即VM1、服务节点1至n、VM2并没有上线。
当流分类节点探测链1上各IP地址对应的设备即VM1、服务节点1至n、VM2均上线,则下发与链1相关联的流分类策略至本节点的硬件。该下发的流分类策略记为流分类策略1,用于引导VM1访问VM2的数据流按照链1转发,具体地,流分类策略1为:依据VM1访问VM2的数据流携带的特征参数源IP地址和目的IP地址在本地匹配到VM1访问VM2的节点标识链,对VM1访问VM2的数据流封装链1的标识并重定向至满足条件的代理转发节点。条件为:与链1中第二个节点标识即IP1对应的服务节点即服务节点1连接。这里满足条件的代理转发节点为代理转发节点1。
当代理转发节点1探测链1上各IP地址对应的设备即VM1、服务节点1至n、VM2均上线,则下发与链1相关联的流分类策略至本节点的硬件。这里的流分类策略用于引导VM1访问VM2的数据流按照链1转发,具体可包含流分类策略2和流分类策略3,流分类策略2为:当通过本地PW端口接收到VM1访问VM2的数据流时,在本地找到与数据流封装的节点标识链标识对应的节点标识链,对数据流进行解封装,并将解封装后的数据流发送至节点标识链中第二个节点标识对应的服务节点即上述的服务节点1。流分类策略3为:当通过本地连接服务节点的服务端口接收到导VM1访问VM2的时,依据VM1访问VM2的数据流携带的特征参数比如源IP地址和目的IP地址在本地匹配到VM1访问VM2的节点标识链,根据VM1访问VM2的节点标识链确定下一跳标识,当下一跳标识为尾节点的节点标识比如IP(2n+1)时,将数据流重定向至尾节点接入的网关设备即代理转发节点2,否则,将数据流发送至下一跳标识对应的服务节点,下一跳标识为所述节点标识链上当前服务节点标识的下一个节点标识,所述当前服务节点标识为所述服务端口连接的服务节点的标识。
当VM1上线后,VM1发送访问VM2的数据流。VM1发送的访问VM2的数据流的源IP地址为VM1的IP地址即IP0,目的IP地址为VM2的IP地址即IP(2n+1)。为便于描述,这里将VM1访问VM2的数据流记为流1_1。
流分类节点接收到流1_1。
流分类节点依据流1_1携带的特征参数比如源IP地址IP0和目的IP地址IP(2n+1)在本地节点标识链中找到节点标识链。该找到的节点标识链即为上述的链1(IP0-IP1-IP2-IP3-IP4-……-IP(2n-1)-IP(2n)-IP(2n+1))。
流分类节点为流1_1增加VXLAN封装头。VXLAN封装头具体如图3所示,VXLAN封装头中的预留字段1携带了该找到的节点标识链即链1的标识。为便于描述,这里将增加了VXLAN封装头的流1_1记为流1_2。
流分类节点确定本地转发流1_2的出端口。该出端口为流分类节点本地连接以下代理转发节点的端口:与该找到的节点标识链即链1中第一个服务节点标识IP1对应的服务节点1连接的代理转发节点(该代理转发节点实质为图4中的代理转发节点1)。为便于描述,这里将该确定出的出端口记为Port0。
流分类节点将流1_2重定向至该确定出的出端口Port0并转发。
代理转发节点1通过本地PW端口(记为Port1)接收到流1_2。
代理转发节点1依据流分类策略2确定流1_2的VXLAN封装头携带的节点标识链的标识,依据该确定的节点标识链标识在本地节点标识链中找到具有该节点标识链标识的节点标识链。该找到的节点标识链即为上述的链1(IP0-IP1-IP2-IP3-IP4-……-IP(2n-1)-IP(2n)-IP(2n+1))。
代理转发节点1对流1_2进行VXLAN解封装,即恢复了上述的流1_1。
代理转发节点1将恢复出的流1_1发送至该找到的节点标识链即链1中第一个服务节点标识IP1对应的服务节点1。
服务节点1通过IP1对应的端口(记为Port1_1)接收代理转发节点1发送的流1_1,并按照本地服务策略对流1_1进行处理。
服务节点1通过IP2对应的端口(记为Port1_2)发送处理后的流1_1给代理转发节点1。
代理转发节点1通过本地连接上述Port1_2的端口(记为Port1_12)接收流1_1。
代理转发节点1依据流分类策略3找到流1_1携带的特征参数比如源IP地址IP0和目的IP地址IP(2n+1)匹配的节点标识链。该找到的节点标识链即为上述的链1(IP0-IP1-IP2-IP3-IP4-……-IP(2n-1)-IP(2n)-IP(2n+1))。
代理转发节点1依据找到的链1并通过以下步骤确定下一跳标识:
确定本地端口Port1_12连接的服务节点1上端口Port1_2所对应的标识为IP2,在本实施例中,代理转发节点1会预先学习本地各服务端口所连接的服务节点上端口对应的标识,基于此,代理转发节点1基于已学习的各端口对应的标识确定服务节点1上端口Port1_2所对应的标识;
将找到的链1(IP0-IP1-IP2-IP3-IP4-……-IP(2n-1)-IP(2n)-IP(2n+1))中IP2的下一个节点标识(即IP3)确定为下一跳标识。
代理转发节点1向下一跳标识IP3对应的服务节点(即服务节点2)发送流1_1。
服务节点2通过IP3对应的端口(记为Por2_3)接收代理转发节点1发送的流1_1,并按照本地服务策略对流1_1进行处理。
服务节点2通过IP4对应的端口(记为Port2_4)发送处理后的流1_1给代理转发节点1。
代理转发节点1通过本地连接服务节点2上Port2_4的端口(记为Port1_24)接收流1_1。
代理转发节点1依据流分类策略3找到流1_1携带的特征参数比如源IP地址IP0和目的IP地址IP(2n+1)匹配的节点标识链。该找到的节点标识链即为上述的链1(IP0-IP1-IP2-IP3-IP4-……-IP(2n-1)-IP(2n)-IP(2n+1))。
代理转发节点1依据找到的链1并通过以下步骤确定下一跳标识:
确定本地端口Port1_24连接的服务节点2上端口Port2_4所对应的标识为IP4;
将找到的链1(IP0-IP1-IP2-IP3-IP4-……-IP(2n-1)-IP(2n)-IP(2n+1))中IP4的下一个服务节点标识即IP5确定为下一跳标识。
代理转发节点1向下一跳标识IP5对应的服务节点发送流1_1。依次类推,最终代理转发节点1会将流1_1发送给服务节点n。
服务节点n通过IP(2n-1)对应的端口(记为Porn_2n-1)接收代理转发节点1发送的流1_1,并按照本地服务策略对接收的流1_1进行处理。
服务节点n通过IP(2n)对应的端口(记为Portn_2n)发送处理后的流1_1给代理转发节点1。
代理转发节点1通过本地连接服务节点n上Portn_2n的端口(记为Port1_n2n)接收流1_1。
代理转发节点1依据流1_1携带的特征参数比如源IP地址IP0和目的IP地址IP(2n+1)在本地节点标识链中找到节点标识链。该找到的节点标识链即为上述的链1(IP0-IP1-IP2-IP3-IP4-……-IP(2n-1)-IP(2n)-IP(2n+1))。
代理转发节点1依据找到的链1并通过以下步骤确定下一跳标识:
确定本地端口Port1_n2n连接服务节点n上端口Portn_2n所对应的标识为IP(2n);
将找到的链1(IP0-IP1-IP2-IP3-IP4-……-IP(2n-1)-IP(2n)-IP(2n+1))中IP(2n)的下一个节点标识即IP(2n+1)确定为下一跳标识。
代理转发节点1对流1_1进行VXLAN封装,这里的VXLAN封装不再包含链1的标识,类似现有的VXLAN封装。VXLAN封装后的流1_1记为流1_3。
代理转发节点1通过连接代理转发节点2(尾节点VM2接入的网关设备)的出端口发送流1_3。
代理转发节点2接收到代理转发节点1发送的流1_3,对流1_3进行VXLAN解封装,即恢复上述的流1_1。
代理转发节点2将恢复出的流1_1直接转发给VM2,最终VM2会收到VM1访问的数据流。
至此,完成图4所示实施例的描述。
需要说明的是,在上面描述的实施例中,是以所有服务节点连接至同一代理转发节点为例,这只是为便于描述所举的特例,并非用于限定本申请,在实现本申请目的的前提下,通过扩展还可以不同服务节点连接不同代理转发节点等。
还需要说明的是,在图4所示实施例中,在链1上各IP地址对应的设备即VM1、服务节点1至n、VM2上线后,流分类节点、代理转发节点1还需进一步探测链1上各IP地址对应的设备即VM1、服务节点1至n、VM2是否下线,当流分类节点探测到链1上各IP地址对应的设备即VM1、服务节点1至n、VM2中有至少一个下线,则删除本地硬件中的第一流分类策略;
同样,当代理转发节点1探测到链1上各IP地址对应的设备即VM1、服务节点1至n、VM2中有至少一个下线,则删除本地硬件中的第二流分类策略。
以上对本申请提供的方法进行了描述。下面对本申请提供的装置进行描述:
参见图5,图5为本申请提供的装置结构图。该装置应用于首节点访问尾节点所经由的网关设备。如图5所示,该装置包括:
探测单元,用于探测节点标识链上每一节点标识对应的节点是否上线,所述节点标识链由首节点的节点标识、首节点访问尾节点依次经由的服务节点的节点标识、以及尾节点的节点标识串链得到;
控制单元,用于当探测单元探测到每一节点标识对应的节点上线,则,
当所述网关设备为首节点接入的网关设备时,下发与所述节点标识链相关联的第一流分类策略至本设备硬件,当接收到首节点访问尾节点的数据流时,依据第一流分类策略引导所述数据流按照所述节点标识链转发;以及,当所述网关设备为所述服务节点接入的网关设备时,下发与所述节点标识链相关联的第二流分类策略至本设备硬件,当接收到首节点访问尾节点的数据流时,依据第二流分类策略引导所述数据流按照所述节点标识链转发。
优选地,所述第一流分类策略或第二流分类策略预先配置在本设备软件层面;或者,
所述第一流分类策略或第二流分类策略预先从软件自定义网络SDN控制器获取并存储在本设备软件层面。
优选地,所述控制单元依据第一流分类策略引导所述数据流按照节点标识链转发包括:
在本地找到所述数据流匹配的所述节点标识链;
为所述数据流封装所述节点标识链的标识;
将封装了节点标识链标识的数据流重定向至满足以下条件的网关设备:接入了所述节点标识链上第二个节点标识对应的服务节点。
优选地,所述控制单元依据第二流分类策略引导所述数据流按照节点标识链转发包括:
当通过本地伪线PW端口接收到所述数据流时,在本地找到与数据流封装的节点标识链标识对应的所述节点标识链,对数据流进行解封装,并将解封装后的数据流发送至所述节点标识链中第二个节点标识对应的服务节点;
当通过本地连接服务节点的服务端口接收到所述数据流时,在本地找到所述数据流匹配的所述节点标识链,根据所述节点标识链确定下一跳标识,当所述下一跳标识为尾节点的节点标识时,将数据流重定向至所述尾节点接入的网关设备,否则,将数据流发送至下一跳标识对应的服务节点,所述下一跳为所述节点标识链上当前服务节点标识的下一个节点标识,所述当前服务节点标识为所述服务端口连接的服务节点的标识。
优选地,所述为数据流封装节点标识链的标识包括:
在数据流上增加VXLAN封装头,所述VXLAN封装头中的其中一个预留字段携带了节点标识链的标识。
至此,完成图5所示的装置结构描述。
对应地,本申请还提供了图5所示装置的硬件结构描述。参见图6,图6为本申请提供的图5所示装置的硬件结构图。如图6所示,该硬件结构可包括处理组件,其进一步包括一个或多个处理器,以及由存储器所代表的存储器资源,用于存储可由处理部件执行的指令,例如应用程序。存储器中存储的应用程序包括上述的检测单元、控制单元。此外,处理组件被配置为执行指令,以执行上述各个单元所执行的操作。
如图6所示,该硬件结构还可以包括一个电源组件被配置为执行装置的电源管理,一个有线或无线网络接口被配置为将装置连接到网络,和一个输入输出(I/O)接口。
至此,完成图6所示的硬件结构描述。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
Claims (10)
1.一种数据流的处理方法,其特征在于,该方法应用于网关设备,该方法包括:
探测节点标识链上每一节点标识对应的节点是否上线,所述节点标识链由首节点的节点标识、首节点访问尾节点依次经由的服务节点的节点标识、以及尾节点的节点标识串链得到;所述首节点访问尾节点依次经由的各服务节点连接同一代理服务节点,所述代理服务节点为所述服务节点接入的网关设备;
当探测到所述每一节点标识对应的节点上线,则,
当所述网关设备为首节点接入的网关设备时,将本设备软件层面存储的与所述节点标识链相关联的第一流分类策略下发至本设备硬件,当接收到首节点访问尾节点的数据流时,依据所述第一流分类策略引导所述数据流按照所述节点标识链转发;
当所述网关设备为所述服务节点接入的网关设备时,将本设备软件层面存储的与所述节点标识链相关联的第二流分类策略下发至本设备硬件,当接收到首节点访问尾节点的数据流时,依据第二流分类策略引导所述数据流按照所述节点标识链转发。
2.根据权利要求1所述的方法,其特征在于,所述第一流分类策略或第二流分类策略预先配置在本设备软件层面;或者,
所述第一流分类策略或第二流分类策略预先从软件自定义网络SDN控制器获取并存储在本设备软件层面。
3.根据权利要求1所述的方法,其特征在于,所述依据第一流分类策略引导所述数据流按照节点标识链转发包括:
在本地找到所述数据流匹配的所述节点标识链;
为所述数据流封装所述节点标识链的标识;
将封装了节点标识链标识的数据流重定向至满足以下条件的网关设备:接入了所述节点标识链上第二个节点标识对应的服务节点。
4.根据权利要求1所述的方法,其特征在于,所述依据第二流分类策略引导所述数据流按照节点标识链转发包括:
当通过本地伪线PW端口接收到所述数据流时,在本地找到与数据流封装的节点标识链标识对应的所述节点标识链,对数据流进行解封装,并将解封装后的数据流发送至所述节点标识链中第二个节点标识对应的服务节点;
当通过本地连接服务节点的服务端口接收到所述数据流时,在本地找到所述数据流匹配的所述节点标识链,根据所述节点标识链确定下一跳标识,当所述下一跳标识为尾节点的节点标识时,将数据流重定向至所述尾节点接入的网关设备,否则,将数据流发送至下一跳标识对应的服务节点。
5.根据权利要求3所述的方法,其特征在于,所述为数据流封装节点标识链的标识包括:
在数据流上增加VXLAN封装头,所述VXLAN封装头中的其中一个预留字段携带了节点标识链的标识。
6.一种数据流的处理装置,其特征在于,该装置应用于网关设备,该装置包括:
探测单元,用于探测节点标识链上每一节点标识对应的节点是否上线,所述节点标识链由首节点的节点标识、首节点访问尾节点依次经由的服务节点的节点标识、以及尾节点的节点标识串链得到;
控制单元,用于当探测单元探测到每一节点标识对应的节点上线,则,
当所述网关设备为首节点接入的网关设备时,将所述网关设备软件层面存储的与所述节点标识链相关联的第一流分类策略下发至本设备硬件,当接收到首节点访问尾节点的数据流时,依据第一流分类策略引导所述数据流按照所述节点标识链转发;以及,
当所述网关设备为所述服务节点接入的网关设备时,将所述网关设备软件层面存储的与所述节点标识链相关联的第二流分类策略下发至本设备硬件,当接收到首节点访问尾节点的数据流时,依据第二流分类策略引导所述数据流按照所述节点标识链转发。
7.根据权利要求6所述的装置,其特征在于,所述第一流分类策略或第二流分类策略预先配置在本设备软件层面;或者,
所述第一流分类策略或第二流分类策略预先从软件自定义网络SDN控制器获取并存储在本设备软件层面。
8.根据权利要求6所述的装置,其特征在于,所述控制单元依据第一流分类策略引导所述数据流按照节点标识链转发包括:
在本地找到所述数据流匹配的所述节点标识链;
为所述数据流封装所述节点标识链的标识;
将封装了节点标识链标识的数据流重定向至满足以下条件的网关设备:接入了所述节点标识链上第二个节点标识对应的服务节点。
9.根据权利要求6所述的装置,其特征在于,所述控制单元依据第二流分类策略引导所述数据流按照节点标识链转发包括:
当通过本地伪线PW端口接收到所述数据流时,在本地找到与数据流封装的节点标识链标识对应的所述节点标识链,对数据流进行解封装,并将解封装后的数据流发送至所述节点标识链中第二个节点标识对应的服务节点;
当通过本地连接服务节点的服务端口接收到所述数据流时,在本地找到所述数据流匹配的所述节点标识链,根据所述节点标识链确定下一跳标识,当所述下一跳标识为尾节点的节点标识时,将数据流重定向至所述尾节点接入的网关设备,否则,将数据流发送至下一跳标识对应的服务节点。
10.根据权利要求8所述的装置,其特征在于,所述为数据流封装节点标识链的标识包括:
在数据流上增加VXLAN封装头,所述VXLAN封装头中的其中一个预留字段携带了节点标识链的标识。
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610606046.7A CN107666447B (zh) | 2016-07-27 | 2016-07-27 | 数据流的处理方法和装置 |
EP17833573.3A EP3493488B1 (en) | 2016-07-27 | 2017-07-27 | Processing of data stream |
JP2019504773A JP6850865B2 (ja) | 2016-07-27 | 2017-07-27 | データストリームの処理方法および第1ゲートウェイ設備 |
PCT/CN2017/094702 WO2018019270A1 (zh) | 2016-07-27 | 2017-07-27 | 数据流的处理 |
US16/303,117 US10972384B2 (en) | 2016-07-27 | 2017-07-27 | Processing of data stream |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610606046.7A CN107666447B (zh) | 2016-07-27 | 2016-07-27 | 数据流的处理方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107666447A CN107666447A (zh) | 2018-02-06 |
CN107666447B true CN107666447B (zh) | 2020-09-08 |
Family
ID=61114948
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610606046.7A Active CN107666447B (zh) | 2016-07-27 | 2016-07-27 | 数据流的处理方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107666447B (zh) |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104426756B (zh) * | 2013-08-19 | 2019-03-15 | 中兴通讯股份有限公司 | 一种服务节点能力信息的获取方法及控制平台 |
EP3425860B1 (en) * | 2014-04-21 | 2021-08-25 | Huawei Technologies Co., Ltd. | Tunnel type selection methods and apparatuses |
JP6426849B2 (ja) * | 2015-01-20 | 2018-11-21 | 華為技術有限公司Huawei Technologies Co.,Ltd. | Sdtがnfv及びsdnと連携するためのシステム及び方法 |
CN105681218B (zh) * | 2016-04-11 | 2019-01-08 | 北京邮电大学 | 一种Openflow网络中流量处理的方法及装置 |
-
2016
- 2016-07-27 CN CN201610606046.7A patent/CN107666447B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN107666447A (zh) | 2018-02-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11240065B2 (en) | NSH encapsulation for traffic steering | |
US10237230B2 (en) | Method and system for inspecting network traffic between end points of a zone | |
US10587492B2 (en) | Method and apparatus for tracing paths in service function chains | |
US9054999B2 (en) | Static TRILL routing | |
EP2993836B1 (en) | Method and device for routing data message | |
US9590820B1 (en) | Methods and apparatus for improving load balancing in overlay networks | |
US20140241368A1 (en) | Control apparatus for forwarding apparatus, control method for forwarding apparatus, communication system, and program | |
EP3292661B1 (en) | Packet forwarding | |
EP3292663B1 (en) | Packet forwarding | |
WO2018019270A1 (zh) | 数据流的处理 | |
CN112187610B (zh) | 一种网络靶场的网络隔离系统与方法 | |
CN107666428B (zh) | 静默设备探测方法以及装置 | |
CN108737239B (zh) | 一种报文转发方法及装置 | |
CN113839894A (zh) | 报文处理方法及系统 | |
CN110391984B (zh) | 一种报文转发方法及装置 | |
CN107666447B (zh) | 数据流的处理方法和装置 | |
US20210119925A1 (en) | Accurate analytics, quality of service and load balancing for internet protocol fragmented packets in data center fabrics | |
US20170070473A1 (en) | A switching fabric including a virtual switch | |
US11632445B2 (en) | Packet recirculation for tunneling encapsulation | |
CN112910791B (zh) | 导流系统及其方法 | |
US10320661B2 (en) | Communication device and communication method | |
CN107666402B (zh) | 网络服务控制方法和装置 | |
CN214799524U (zh) | 导流系统 | |
CN112910790B (zh) | 导流系统及其方法 | |
WO2023005620A1 (zh) | 报文处理方法、装置及通信系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |