CN107592270B - FlowSpec消息的处理方法和装置以及系统 - Google Patents

FlowSpec消息的处理方法和装置以及系统 Download PDF

Info

Publication number
CN107592270B
CN107592270B CN201610533501.5A CN201610533501A CN107592270B CN 107592270 B CN107592270 B CN 107592270B CN 201610533501 A CN201610533501 A CN 201610533501A CN 107592270 B CN107592270 B CN 107592270B
Authority
CN
China
Prior art keywords
interface
forwarding device
rule
forwarding
flowspec
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
Application number
CN201610533501.5A
Other languages
English (en)
Other versions
CN107592270A (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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei 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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201610533501.5A priority Critical patent/CN107592270B/zh
Priority to CN202111210278.8A priority patent/CN114095452A/zh
Priority to EP17823466.2A priority patent/EP3462688B1/en
Priority to PCT/CN2017/084379 priority patent/WO2018006654A1/zh
Publication of CN107592270A publication Critical patent/CN107592270A/zh
Priority to US16/240,242 priority patent/US10791059B2/en
Priority to US17/023,790 priority patent/US11290386B2/en
Application granted granted Critical
Publication of CN107592270B publication Critical patent/CN107592270B/zh
Priority to US17/683,778 priority patent/US12010030B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/33Flow control; Congestion control using forward notification
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4641Virtual LANs, VLANs, e.g. virtual private networks [VPN]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/66Arrangements for connecting between networks having differing types of switching systems, e.g. gateways
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • H04L45/04Interdomain routing, e.g. hierarchical routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/64Routing or path finding of packets in data switching networks using an overlay routing layer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2441Traffic characterised by specific attributes, e.g. priority or QoS relying on flow classification, e.g. using integrated services [IntServ]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种FlowSpec消息的处理方法和装置以及系统,用于实现对转发设备的业务流按照转发设备接口进行精细化控制。FlowSpec消息的处理方法可包括:控制器接收转发设备上报的转发设备接口信息;所述控制器从接收到的所述转发设备接口信息中选择出需要应用FlowSpec规则的至少一个转发设备接口;所述控制器根据所述需要应用FlowSpec规则的至少一个转发设备接口生成应用接口规则,所述应用接口规则用于指示所述转发设备确定出能够应用所述FlowSpec规则的转发设备接口;所述控制器向所述转发设备发送FlowSpec消息,所述FlowSpec消息包括所述应用接口规则和所述FlowSpec规则。

Description

FlowSpec消息的处理方法和装置以及系统
技术领域
本发明涉及通信技术领域,尤其涉及一种流规范(英文全称:FlowSpecification,英文简称:FlowSpec)消息的处理方法和装置以及系统。
背景技术
边界网关协议(英文全称:Border Gateway Protocol,英文简称:BGP)是一种用于自治系统(英文全称:Autonomous System,英文简称:AS)之间的动态路由协议。简称BGP广泛应用在网络(英文名称:Internet)中,用于在AS之间和AS内边缘路由器间传递路由信息。传递的路由信息包括:网络协议(英文全称:Internet Protocol,英文简称IP)路由、媒体接入控制(英文全称:Media Access Control,简称MAC)路由和FlowSpec规则等网络侧可达信息(Network Layer Reachability Information,简称NLRI)信息。该BGP FlowSpec规则是基于软件定义网络(Software Defined Network,SDN)架构的集中式流量调度技术中的一种。集中式的SDN控制器通过BGP FlowSpec消息向转发设备下发FlowSpec规则,从而可以按照用户的需求,对业务流进行优化调度。
然而,现有技术中控制器通过FlowSpec消息下发一条流规则,在转发设备上会优选安装该流规则后会进行全局生效,即转发设备的所有设备接口接入的流量都会尝试匹配该流规则,造成流规则的控制粒度太大,不够精细。
发明内容
本发明实施例提供了一种FlowSpec消息的处理方法和装置以及系统,用于实现对转发设备的业务流按照转发设备接口进行精细化控制。
为解决上述技术问题,本发明实施例提供以下技术方案:
第一方面,本发明实施例提供一种FlowSpec消息的处理方法,包括:
控制器接收转发设备上报的转发设备接口信息;
所述控制器从接收到的所述转发设备接口信息中选择出需要应用FlowSpec规则的至少一个转发设备接口;
所述控制器根据所述需要应用FlowSpec规则的至少一个转发设备接口生成应用接口规则,所述应用接口规则用于指示所述转发设备确定出能够应用所述FlowSpec规则的转发设备接口;
所述控制器向所述转发设备发送FlowSpec消息,所述FlowSpec消息包括所述应用接口规则和所述FlowSpec规则。
在本发明实施例中,由于转发设备向控制器上报该转发设备自身的转发设备接口信息,因此控制器在下发FlowSpec规则时可以根据接收到的转发设备接口信息来进行应用该FlowSpec规则的转发设备接口配置,从而控制器可以具体配置哪个转发设备接口或者哪些转发设备接口可以需要应用该FlowSpec规则,并生成相应的应用接口规则。本发明实施例中控制器可以控制一条FlowSpec规则应用到转发设备中灵活指定的转发设备接口上,从而实现按照用户需求自动、灵活指定流规则应用的范围,达到对业务的精细化控制。
结合第一方面,在第一方面的第一种可能的实现方式中,所述转发设备接口信息,包括:转发设备接口的接口标识;
所述控制器根据所述需要应用FlowSpec规则的至少一个转发设备接口生成应用接口规则,包括:
所述控制器获取所述需要应用FlowSpec规则的至少一个转发设备接口对应的至少一个接口标识;
所述控制器生成应用接口规则,所述应用接口规则包括:接口标识集合,所述接口标识集合包括:所述需要应用FlowSpec规则的至少一个转发设备接口对应的至少一个接口标识。
本发明实施例中可以控制器可以在应用接口规则中包括接口标识集合,通过接口标识集合来指示转发设备确定出能够应用FlowSpec规则的转发设备接口。
结合第一方面,在第一方面的第二种可能的实现方式中,所述控制器根据所述需要应用FlowSpec规则的至少一个转发设备接口生成应用接口规则,包括:
所述控制器确定所述需要应用FlowSpec规则的至少一个转发设备接口所属的接口组;
所述控制器获取所述需要应用FlowSpec规则的至少一个转发设备接口所属的接口组对应的接口组标识;
所述控制器生成应用接口规则,所述应用接口规则包括:所述接口组标识。
本发明实施例中可以控制器可以在应用接口规则中包括接口组标识,通过接口组标识来指示转发设备确定出能够应用FlowSpec规则的转发设备接口。
结合第一方面的第二种可能的实现方式,在第一方面的第三种可能的实现方式中,所述控制器确定所述需要应用FlowSpec规则的至少一个转发设备接口对应的接口标识所属的接口组之前,所述方法还包括:
所述控制器创建接口组标识和接口组包括的转发设备接口的接口标识;
所述控制器向所述转发设备发送创建的接口组标识和接口组包括的转发设备接口的接口标识。
结合第一方面,在第一方面的第四种可能的实现方式中,所述控制器根据所述需要应用FlowSpec规则的至少一个转发设备接口生成应用接口规则,包括:
所述控制器生成应用接口规则,所述应用接口规则包括:业务筛选条件,所述业务筛选条件用于从所述转发设备接口信息中筛选出所述需要应用FlowSpec规则的至少一个转发设备接口。
本发明实施例中可以控制器可以在应用接口规则中包括业务筛选条件,通过业务筛选条件来指示转发设备确定出能够应用FlowSpec规则的转发设备接口。
结合第一方面或第一方面的第一种可能或第二种可能或第三种可能或第四种可能的实现方式,在第一方面的第五种可能的实现方式中,所述控制器向所述转发设备发送FlowSpec消息,包括:
所述控制器通过BGP路由属性信息向所述转发设备发送FlowSpec消息,所述BGP路由属性信息承载有所述应用接口规则。
本发明实施例中,控制器可以通过BGP路由属性信息承载应用接口规则,从而通过对BGP路由属性信息的扩展完成FlowSpec消息的发送。
结合第一方面或第一方面的第一种可能或第二种可能或第三种可能或第四种可能的实现方式,在第一方面的第六种可能的实现方式中,所述控制器接收转发设备上报的转发设备接口信息,包括:
所述控制器通过边界网关协议链路状态BGP-LS协议接收转发设备上报的转发设备接口信息。
本发明实施例中,控制器和转发设备可以通过BGP-LS协议进行通信,完成在BGP-LS场景下转发设备接口信息的传输。
结合第一方面的第五种可能的实现方式,在第一方面的第七种可能的实现方式中,所述BGP路由属性信息包括如下信息中的至少一种:流扩展属性Flow ExtendedAttribute信息、接口组Interface Group的扩展团体属性ECA信息和业务筛选条件属性Service filter Attribute信息。
第二方面,本发明实施例还提供一种信息的处理方法,包括
转发设备向控制器上报该转发设备自身的转发设备接口信息;
所述转发设备接收所述控制器发送的FlowSpec消息,并从所述FlowSpec消息中获取到应用接口规则和FlowSpec规则;
所述转发设备根据所述应用接口规则确定所述转发设备的转发设备接口中是否存在需要应用FlowSpec规则的至少一个转发设备接口;
当所述转发设备的转发设备接口中存在所述需要应用FlowSpec规则的至少一个转发设备接口时,所述转发设备将所述FlowSpec规则应用到所述需要应用FlowSpec规则的至少一个转发设备接口上。
在本发明实施例中,由于转发设备向控制器上报该转发设备自身的转发设备接口信息,因此控制器在下发FlowSpec规则时可以根据接收到的转发设备接口信息来进行应用该FlowSpec规则的转发设备接口配置,从而控制器可以具体配置哪个转发设备接口或者哪些转发设备接口可以需要应用该FlowSpec规则,并生成相应的应用接口规则。本发明实施例中控制器可以控制一条FlowSpec规则应用到转发设备中灵活指定的转发设备接口上,从而实现按照用户需求自动、灵活指定流规则应用的范围,达到对业务的精细化控制。
结合第二方面,在第二方面的第一种可能的实现方式中,当所述应用接口规则为接口标识集合时,所述转发设备根据所述应用接口规则确定所述转发设备的转发设备接口中是否存在需要应用FlowSpec规则的至少一个转发设备接口,包括:
所述转发设备从所述接口标识集合中获取到接口标识;
所述转发设备从所述转发设备的转发设备接口对应的接口标识中查找是否存在所述接口标识集合中的接口标识。
本发明实施例中可以控制器可以在应用接口规则中包括接口标识集合,通过接口标识集合来指示转发设备确定出能够应用FlowSpec规则的转发设备接口。
结合第二方面,在第二方面的第二种可能的实现方式中,当所述应用接口规则为接口组标识时,所述转发设备根据所述应用接口规则确定所述转发设备的转发设备接口中是否存在需要应用FlowSpec规则的至少一个转发设备接口,包括:
所述转发设备根据所述接口组标识获取到接口组;
所述转发设备从所述转发设备的转发设备接口中查找是否存在所述接口组中包括的转发设备接口。
本发明实施例中可以控制器可以在应用接口规则中包括接口组标识,通过接口组标识来指示转发设备确定出能够应用FlowSpec规则的转发设备接口。
结合第二方面的第二种可能的实现方式,在第二方面的第三种可能的实现方式中,所述转发设备根据所述应用接口规则确定所述转发设备的转发设备接口中是否存在需要应用FlowSpec规则的至少一个转发设备接口之前,所述方法还包括:
所述转发设备接收所述控制器发放的接口组标识和接口组包括的转发设备接口的接口标识;
所述转发设备根据所述控制器发放的接口组标识和接口组包括的转发设备接口的接口标识筛选所述转发设备的转发设备接口,维护所述转发设备的转发设备接口与接口组之间的关联关系。
结合第二方面,在第二方面的第四种可能的实现方式中,当所述应用接口规则为业务筛选条件时,所述转发设备根据所述应用接口规则确定所述转发设备的转发设备接口中是否存在需要应用FlowSpec规则的至少一个转发设备接口,包括:
所述转发设备从所述转发设备的转发设备接口中查找是否存在满足所述业务筛选条件的转发设备接口,若所述转发设备的转发设备接口中存在满足所述业务筛选条件的转发设备接口,则确定所述转发设备中存在所述需要应用FlowSpec规则的至少一个转发设备接口,若所述转发设备的转发设备接口中不存在满足所述业务筛选条件的转发设备接口,则确定所述转发设备的转发设备接口中不存在所述需要应用FlowSpec规则的至少一个转发设备接口。
本发明实施例中可以控制器可以在应用接口规则中包括业务筛选条件,通过业务筛选条件来指示转发设备确定出能够应用FlowSpec规则的转发设备接口。
结合第二方面或第二方面的第一种可能或第二种可能或第三种可能或第四种可能的实现方式,在第二方面的第五种可能的实现方式中,所述转发设备接口信息,包括如下信息中的至少一种:接口标识符Interface Identifier信息、接口描述InterfaceDescription信息、接口服务Interface Service信息和接口组Interface Group信息。
结合第二方面或第二方面的第一种可能或第二种可能或第三种可能或第四种可能的实现方式,在第二方面的第六种可能的实现方式中,所述转发设备向控制器上报该转发设备自身的转发设备接口信息,包括:
所述转发设备通过边界网关协议链路状态BGP-LS向控制器上报该转发设备自身的转发设备接口信息。
本发明实施例中,控制器和转发设备可以通过BGP-LS协议进行通信,完成在BGP-LS场景下转发设备接口信息的传输。
结合第二方面的第五种可能的实现方式,在第二方面的第七种可能的实现方式中,所述转发设备接口信息,包括:转发设备的接口信息,和/或转发设备的设备信息。
所述转发设备的设备信息,包括:BGP标识符Identifier。
所述Interface Service信息的类型是如下信息中的一种:虚拟专用局域网业务VPLS信息、虚拟专线业务VPWS信息、以太网虚拟专用网EVPN信息和三层虚拟专用网L3VPN信息。
所述Interface Service信息,包括如下信息中的至少一种:虚拟专用网实例名称VPN Instance name信息、虚拟专用网实例标识VPN Instance ID信息、路由区分符RD信息、路由入口目标Import RT、路由出口目标Export RT和以太网段标识符ESI。
第三方面,本发明实施例还提供一种控制器,包括:
接收模块,用于接收转发设备上报的转发设备接口信息;
接口配置模块,用于从接收到的所述转发设备接口信息中选择出需要应用FlowSpec规则的至少一个转发设备接口;
应用接口规则生成模块,用于根据所述需要应用FlowSpec规则的至少一个转发设备接口生成应用接口规则,所述应用接口规则用于指示所述转发设备确定出能够应用所述FlowSpec规则的转发设备接口;
发送模块,用于向所述转发设备发送FlowSpec消息,所述FlowSpec消息包括所述应用接口规则和所述FlowSpec规则。
在本发明实施例中,由于转发设备向控制器上报该转发设备自身的转发设备接口信息,因此控制器在下发FlowSpec规则时可以根据接收到的转发设备接口信息来进行应用该FlowSpec规则的转发设备接口配置,从而控制器可以具体配置哪个转发设备接口或者哪些转发设备接口可以需要应用该FlowSpec规则,并生成相应的应用接口规则。本发明实施例中控制器可以控制一条FlowSpec规则应用到转发设备中灵活指定的转发设备接口上,从而实现按照用户需求自动、灵活指定流规则应用的范围,达到对业务的精细化控制。
结合第三方面,在第三方面的第一种可能的实现方式中,所述转发设备接口信息,包括:转发设备接口的接口标识;
所述应用接口规则生成模块,具体用于获取所述需要应用FlowSpec规则的至少一个转发设备接口对应的至少一个接口标识;生成应用接口规则,所述应用接口规则包括:接口标识集合,所述接口标识集合包括:所述需要应用FlowSpec规则的至少一个转发设备接口对应的至少一个接口标识。
本发明实施例中可以控制器可以在应用接口规则中包括接口标识集合,通过接口标识集合来指示转发设备确定出能够应用FlowSpec规则的转发设备接口。
结合第三方面,在第三方面的第二种可能的实现方式中,所述应用接口规则生成模块,具体用于确定所述需要应用FlowSpec规则的至少一个转发设备接口所属的接口组;获取所述需要应用FlowSpec规则的至少一个转发设备接口所属的接口组对应的接口组标识;生成应用接口规则,所述应用接口规则包括:所述接口组标识。
本发明实施例中可以控制器可以在应用接口规则中包括接口组标识,通过接口组标识来指示转发设备确定出能够应用FlowSpec规则的转发设备接口。
结合第三方面的第二种可能的实现方式,在第三方面的第三种可能的实现方式中,所述控制器,还包括:接口组处理模块,用于创建接口组标识和接口组包括的转发设备接口的接口标识;所述转发设备发送创建的接口组标识和接口组包括的转发设备接口的接口标识。
结合第三方面,在第三方面的第四种可能的实现方式中,所述应用接口规则生成模块,具体用于生成应用接口规则,所述应用接口规则包括:业务筛选条件,所述业务筛选条件用于从所述转发设备接口信息中筛选出所述需要应用FlowSpec规则的至少一个转发设备接口。
本发明实施例中可以控制器可以在应用接口规则中包括业务筛选条件,通过业务筛选条件来指示转发设备确定出能够应用FlowSpec规则的转发设备接口。
结合第三方面或第三方面的第一种可能或第二种可能或第三种可能或第四种可能的实现方式,在第三方面的第五种可能的实现方式中,所述发送模块,具体用于通过BGP路由属性信息向所述转发设备发送FlowSpec消息,所述BGP路由属性信息承载有所述应用接口规则。
本发明实施例中,控制器可以通过BGP路由属性信息承载应用接口规则,从而通过对BGP路由属性信息的扩展完成FlowSpec消息的发送。
结合第三方面或第三方面的第一种可能或第二种可能或第三种可能或第四种可能的实现方式,在第三方面的第六种可能的实现方式中,所述接收模块,具体用于通过边界网关协议链路状态BGP-LS协议接收转发设备上报的转发设备接口信息。
本发明实施例中,控制器和转发设备可以通过BGP-LS协议进行通信,完成在BGP-LS场景下转发设备接口信息的传输。
第四方面,本发明实施例还提供一种转发设备,包括:
发送模块,用于向控制器上报该转发设备自身的转发设备接口信息;
接收模块,用于接收所述控制器发送的FlowSpec消息,并从所述FlowSpec消息中获取到应用接口规则和FlowSpec规则;
接口识别模块,用于根据所述应用接口规则确定所述转发设备的转发设备接口中是否存在需要应用FlowSpec规则的至少一个转发设备接口;
FlowSpec规则应用模块,用于当所述转发设备的转发设备接口中存在所述需要应用FlowSpec规则的至少一个转发设备接口时,将所述FlowSpec规则应用到所述需要应用FlowSpec规则的至少一个转发设备接口上。
在本发明实施例中,由于转发设备向控制器上报该转发设备自身的转发设备接口信息,因此控制器在下发FlowSpec规则时可以根据接收到的转发设备接口信息来进行应用该FlowSpec规则的转发设备接口配置,从而控制器可以具体配置哪个转发设备接口或者哪些转发设备接口可以需要应用该FlowSpec规则,并生成相应的应用接口规则。本发明实施例中控制器可以控制一条FlowSpec规则应用到转发设备中灵活指定的转发设备接口上,从而实现按照用户需求自动、灵活指定流规则应用的范围,达到对业务的精细化控制。
结合第四方面,在第四方面的第一种可能的实现方式中,当所述应用接口规则为接口标识集合时,所述接口识别模块,具体用于从所述接口标识集合中获取到接口标识;从所述转发设备的转发设备接口对应的接口标识中查找是否存在所述接口标识集合中的接口标识。
本发明实施例中可以控制器可以在应用接口规则中包括接口标识集合,通过接口标识集合来指示转发设备确定出能够应用FlowSpec规则的转发设备接口。
结合第四方面,在第四方面的第二种可能的实现方式中,当所述应用接口规则为接口组标识时,所述接口识别模块,具体用于根据所述接口组标识获取到接口组;从所述转发设备的转发设备接口中查找是否存在所述接口组中包括的转发设备接口。
本发明实施例中可以控制器可以在应用接口规则中包括接口组标识,通过接口组标识来指示转发设备确定出能够应用FlowSpec规则的转发设备接口。
结合第四方面的第二种可能的实现方式,在第四方面的第三种可能的实现方式中,所述转发设备还包括:接口组处理模块,用于所述接口识别模块根据所述应用接口规则确定所述转发设备的转发设备接口中是否存在需要应用FlowSpec规则的至少一个转发设备接口之前,接收所述控制器发放的接口组标识和接口组包括的转发设备接口的接口标识;根据所述控制器发放的接口组标识和接口组包括的转发设备接口的接口标识筛选所述转发设备的转发设备接口,维护所述转发设备的转发设备接口与接口组之间的关联关系。
结合第四方面,在第四方面的第四种可能的实现方式中,当所述应用接口规则为业务筛选条件时,所述接口识别模块,具体用于从所述转发设备的转发设备接口中查找是否存在满足所述业务筛选条件的转发设备接口,若所述转发设备的转发设备接口中存在满足所述业务筛选条件的转发设备接口,则确定所述转发设备中存在所述需要应用FlowSpec规则的至少一个转发设备接口,若所述转发设备的转发设备接口中不存在满足所述业务筛选条件的转发设备接口,则确定所述转发设备的转发设备接口中不存在所述需要应用FlowSpec规则的至少一个转发设备接口。
本发明实施例中可以控制器可以在应用接口规则中包括业务筛选条件,通过业务筛选条件来指示转发设备确定出能够应用FlowSpec规则的转发设备接口。
结合第四方面或第四方面的第一种可能或第二种可能或第三种可能或第四种可能的实现方式,在第四方面的第五种可能的实现方式中,所述转发设备接口信息,包括如下信息中的至少一种:接口标识符Interface Identifier信息、接口描述InterfaceDescription信息、接口服务Interface Service信息和接口组Interface Group信息。
结合第四方面或第四方面的第一种可能或第二种可能或第三种可能或第四种可能的实现方式,在第四方面的第六种可能的实现方式中,所述发送模块,具体用于通过边界网关协议链路状态BGP-LS向控制器上报该转发设备自身的转发设备接口信息。
本发明实施例中,控制器和转发设备可以通过BGP-LS协议进行通信,完成在BGP-LS场景下转发设备接口信息的传输。
第五方面,本发明实施例还提供一种FlowSpec消息的处理系统,包括:如前述第三方面中任一项所述的控制器和如前述第四方面中任一项所述的转发设备。
在本发明实施例中,由于转发设备向控制器上报该转发设备自身的转发设备接口信息,因此控制器在下发FlowSpec规则时可以根据接收到的转发设备接口信息来进行应用该FlowSpec规则的转发设备接口配置,从而控制器可以具体配置哪个转发设备接口或者哪些转发设备接口可以需要应用该FlowSpec规则,并生成相应的应用接口规则。本发明实施例中控制器可以控制一条FlowSpec规则应用到转发设备中灵活指定的转发设备接口上,从而实现按照用户需求自动、灵活指定流规则应用的范围,达到对业务的精细化控制。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的技术人员来讲,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的FlowSpec消息的处理方法应用的系统框架示意图;
图2为本发明实施例提供的一种FlowSpec消息的处理方法的流程方框示意图;
图3为本发明实施例提供的另一种FlowSpec消息的处理方法的流程方框示意图;
图4-a为本发明实施例提供的接口NLRI的数据结构示意图;
图4-b为本发明实施例提供的一种扩展节点描述Sub-TLVs的数据结构示意图;
图4-c为本发明实施例提供的另一种扩展接口描述Sub-TLVs的数据结构示意图;
图4-d为本发明实施例提供的一种接口服务Sub-TLVs的数据结构示意图;
图4-e为本发明实施例提供的另一种扩展服务Sub-TLVs的数据结构示意图;
图4-f为本发明实施例提供的一种边界接口Sub-TLVs的数据结构示意图;
图5-a为本发明实施例提供的一种控制器的组成结构示意图;
图5-b为本发明实施例提供的另一种控制器的组成结构示意图;
图6-a为本发明实施例提供的一种转发设备的组成结构示意图;
图6-b为本发明实施例提供的另一种转发设备的组成结构示意图;
图7为本发明实施例提供的另一种控制器的组成结构示意图;
图8为本发明实施例提供的另一种转发设备的组成结构示意图;
图9为本发明实施例提供的FlowSpec消息的处理系统的组成结构示意图。
具体实施方式
本发明实施例提供了一种信息的处理方法FlowSpec消息的处理方法和装置以及系统,用于实现对转发设备的业务流按照转发设备接口进行精细化控制。
为使得本发明的发明目的、特征、优点能够更加的明显和易懂,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,下面所描述的实施例仅仅是本发明一部分实施例,而非全部实施例。基于本发明中的实施例,本领域的技术人员所获得的所有其他实施例,都属于本发明保护的范围。
本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的术语在适当情况下可以互换,这仅仅是描述本发明的实施例中对相同属性的对象在描述时所采用的区分方式。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,以便包含一系列单元的过程、方法、系统、产品或设备不必限于那些单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它单元。
请参阅图1所示,图1为本发明实施例提供的FlowSpec消息的处理方法应用的系统框架示意图。本发明实施例中控制器可以和转发设备进行信息控制交互,例如控制器和转发设备之间可以通过BGP进行通信。例如图1中以N个转发设备为例,N为非0自然数。转发设备1、转发设备2、…和转发设备N可以在控制器的业务控制下应用L2/L3虚拟专用网络(英文全称:Virtual Private Network,英文简称:VPN)业务,此处只是举例说明。本发明实施例中控制器可以收集转发设备的转发设备接口信息,例如可以是网络边缘转发设备的外连接口,例如L2或L3业务接口,便于控制器集中部署应用在指定转发设备的转发设备接口上的业务策略,例如在所有指定以太网虚拟专用网络(英文全称:Ethernet Virtual PrivateNetwork,英文简称:EVPN)实例的接入电路(英文全称:Access Circuit,英文简称:AC)接口上部署导流策略,具体实现表现为进一步扩展BGP FlowSpe消息,在散播FlowSpec规则的同时,在FlowSpec规则中携带应用接口规则,从而转发设备可以选择本地合适的转发设备接口来应用该FlowSpec规则。接下来分别从控制器和转发设备的角度对本发明实施例提供的FlowSpec消息的处理方法进行详细说明。
本发明信息的处理方法的一个实施例,可应用于控制器一侧中,请参阅图2所示,本发明一个实施例提供的FlowSpec消息的处理方法,可以包括如下步骤:
201、控制器接收转发设备上报的转发设备接口信息。
在本发明实施例中,控制器是控制面设备,该控制器可以和转发设备进行信息交互。该控制器可以是在控制网络中独立配置的设备,也可以是转发设备中配置的控制模块,即转发设备中某个转发设备中可以配置控制模块,从而实现对转发设备的业务控制。举例说明,本发明实施例控制器可以是路由反射器(英文全称:Route reflector,英文简称:RR),该控制器也可以是RR扩展了本发明实施例的FlowSpec消息处理功能后实现。本发明实施例提供的转发设备可以是支持BGP协议并和其他设备建立BGP协议会话的设备。例如该转发设备可以是提供商边缘(英文全称:Provider Edge,英文简称:PE)设备,该转发设备也可以是客户边缘(英文全称:Customer Edge,英文简称:CE)设备。
在本发明实施例中,控制器和转发设备之间可以建立BGP会话,转发设备通过BGP会话向控制器上报该转发设备自身的转发设备接口信息,转发设备上报的转发设备接口可以是指物理接口,也可以指逻辑接口。例如转发设备可以是PE设备,PE设备向控制器上报该PE设备自身的AC接口标识(英文全称:Identifier,英文简称:ID)。控制器通过BGP会话可以接收到转发设备上报的转发设备接口信息。其中,本发明实施例中控制器可以和多个转发设备分别建立BGP会话,从而控制器可以分别接收多个转发设备上报的转发设备接口信息。
需要说明的是,在本发明实施例中转发设备上报给控制器的转发设备接口信息可以有多种实现方式,具体需要结合应用场景来确定转发设备上报哪种类型的转发设备接口信息,上报哪种类型的转发设备接口信息可以由转发设备来确定,也可以由控制器来确定,还可以由控制器和转发设备来协商确定,此处不做限定,接下来对设备接口信息的实现方式进行举例说明。
在本发明的一些实施例中,转发设备上报给控制器的转发设备接口信息,可以包括:转发设备的接口信息和转发设备的设备信息。其中,转发设备可以向控制器上报该转发设备的转发设备的接口信息。转发设备向控制器上报该转发设备的转发设备的转发设备接口信息和转发设备的设备信息,转发设备的转发设备接口信息是指描述转发设备的转发设备接口的信息,转发设备的设备信息是指描述转发设备的设备信息。
在本发明的一些实施例中,转发设备的设备信息,包括:BGP标识符(英文名称:Identifier)。它的值可以表示为Router ID,用于在整个网络中唯一标识一个转发设备,后续实施例中对转发设备的设备信息进行详细举例说明。若有多个转发设备则每个转发设备都可以向控制器上报该转发设备的BGP标识符。
在本发明的一些实施例中,转发设备的接口信息,具体可以包括如下信息中的至少一种:接口标识符(英文名称:Interface Identifier)信息、接口描述(英文名称:Interface Description)信息、接口服务(英文名称:Interface Service)信息和接口组(英文名称:Interface Group)信息。其中,转发设备的接口信息(英文名称:InterfaceDescriptors)是IEEE802.1AB中定义出的,接口信息是关于接口的附加描述,例如描述接口当前的业务用途等。具体的,接口标识符信息用于标识转发设备的转发设备接口,接口描述信息是指描述转发设备的转发设备接口的信息,接口服务信息是描述接口的服务类型等,例如接口服务信息可以是L3VPN或者L2VPN或者EVPN等。接口组信息的取值可以是接口组ID,可以是一个32比特(英文名称:bit)位的数值,也可以是通用唯一识别码(英文全称:Universally Unique Identifier,英文简称:UUID)。后续实施例中对转发设备的接口信息进行详细举例说明。
进一步的,在本发明的一些实施例中,接口服务信息的类型是如下信息中的一种:虚拟专用局域网业务(英文全称:Virtual Private LAN Service,英文简称:VPLS)信息、虚拟专线业务(英文全称:Virtual Private Wire Service,英文简称:VPWS)信息、EVPN信息和三层虚拟专用网(英文简称:L3VPN)信息,具体可以结合应用场景来确定接口服务信息的具体类型。
在本发明的另一些实施例中,接口服务信息,可以包括如下信息中的至少一种:虚拟专用网实例名称(英文名称:VPN Instance name)信息、虚拟专用网实例标识(英文名称:VPN Instance ID)信息、路由区分符(英文全称:Route Distinguisher,英文简称:RD)信息、路由入口目标(英文全称:Import Route Target,英文简称:Import RT)、路由出口目标(英文全称:Export Route Target,英文简称:Export RT)和以太网段标识符(英文全称:Ethernet Segment Identifier,英文简称:ESI)。后续实施例中对转发设备的接口服务信息进行详细举例说明。
在本发明的一些实施例中,步骤201控制器接收转发设备上报的转发设备接口信息,包括:
A1、控制器通过边界网关协议链路状态(英文全称:Border Gateway Protocol-Link State,英文简称:BGP-LS)协议接收转发设备上报的转发设备接口信息。
在目前的BGP-LS的相关草案中,BGP-LS特指通过基于BGP散播链路状态的协议机制,该BGP-LS被定义用来收集内部网关协议(英文全称:Internal Gateway Protocol,英文简称:IGP)、BGP协议以及静态配置的拓扑信息(例如节点、链路、前缀、是否携带带宽信息等属性),主要用于为PCE等集中计算路径的控制设备提供拓扑信息,供其计算路径,从而实现网络路由的优化。但是目前的BGP-LS无法实现对设备的业务流进行精细化控制。本发明实施例中控制器和转发设备可以应用于BGP-LS的应用场景下,则控制器可以通过BGP-LS协议接收转发设备各自上报该转发设备自身的L2层转发设备接口信息,从而解决目前的BGP-LS只能收集L3层接口信息的问题,本发明实施例中对BGP-LS扩展收集接口的信息,尤其是能收集L2层转发设备接口信息。
202、控制器从接收到的转发设备接口信息中选择出需要应用FlowSpec规则的至少一个转发设备接口。
在本发明实施例中,控制器创建有流规范(英文全称:Flow Specification,英文简称:FlowSpec)规则,该FlowSpec规则也可以称为FlowSpec路由,或者BGP FlowSpec规则。其中,FlowSpec规则有多种实现方式,可以由用户自己定义,也可以由控制器来自行定义。例如,用户可以在控制器上配置FlowSpec规则,或者控制器和网络流量分析设备联动,自动生成防止拒绝服务(英文全称:Denial of Service,英文简称:DoS)和分布式拒绝服务(英文全称:Distributed Denial of Service,英文简称:DDoS)攻击的FlowSpec规则。BGPFlowSpec是一种标准路由协议,该协议提供的机制可以在路由基础设施正确地与本地DDoS解决方案相集成的情况下缓解DDoS攻击。
在本发明实施例中,控制器创建有FlowSpec规则之后,控制器可以结合步骤201中获取到的转发设备的转发设备接口信息来确定该FlowSpec规则需要应用中哪个或者哪些转发设备接口,将控制器确定下来的需要应用FlowSpec规则的转发设备接口可以是一个转发设备接口或者多个转发设备接口,此处不做限定。
目前的BGP FlowSpec可以支持传递类似于接入控制列表(英文全称:AccessControl List,英文简称:ACL)或策略路由(英文全称:Policy Based Routing,英文简称:PBR)的精细流的策略或路由。但是BGP FlowSpec无法实现准确指定应用FlowSpec的转发设备接口,本发明实施例中转发设备可以向控制器上报自身的转发设备接口信息,则控制器在配置FlowSpec规则时可以使用接收到的转发设备接口信息来配置该FlowSpec规则应用的转发设备接口,从而控制器在控制面上确定了哪些转发设备接口可以使用FlowSpec规则,因此可以达到对FlowSpec规则的精细化控制。
203、控制器根据需要应用FlowSpec规则的至少一个转发设备接口生成应用接口规则。
其中,应用接口规则用于指示转发设备确定出能够应用FlowSpec规则的转发设备接口。
在本发明实施例中,通过步骤202控制器确定需要应用FlowSpec规则的至少一个转发设备接口之后,接下来可以生成应用接口规则,该应用接口规则可以通过FlowSpec消息发送给转发设备,控制器生成的应用接口规则可以指示转发设备确定出能够应用FlowSpec规则的转发设备接口,该应用接口规则的实现方式可以有多种,接下来进行详细说明控制器通过应用接口规则实现对需要应用FlowSpec规则的至少一个转发设备接口的指示。
204、控制器向转发设备发送FlowSpec消息。
其中,该FlowSpec消息包括应用接口规则和FlowSpec规则。
在本发明实施例中,控制器为FlowSpec规则配置出需要应用FlowSpec规则的至少一个转发设备接口之后,控制器可以生成应用接口规则,控制器向转发设备发送FlowSpec消息,例如控制器可以通过BGP会话向转发设备发送FlowSpec消息,转发设备通过FlowSpec消息中携带的应用接口规则可以确定出需要应用到需要应用FlowSpec规则的至少一个转发设备接口。
在本发明的一些实施例中,转发设备接口信息,包括:转发设备接口的接口标识,即转发设备向控制器上报的是转发设备的转发设备接口标识,在这种实现场景下,控制器可以通过如下方式确定应用接口规则的具体实现方式,步骤203控制器根据需要应用FlowSpec规则的至少一个转发设备接口生成应用接口规则,具体可以包括如下步骤:
B1、控制器获取需要应用FlowSpec规则的至少一个转发设备接口对应的至少一个接口标识;
B2、控制器生成应用接口规则,所述应用接口规则包括:接口标识集合,接口标识集合包括:需要应用FlowSpec规则的至少一个转发设备接口对应的至少一个接口标识。
其中,控制器接收到转发设备发送的接口标识,则控制器可以配置使用FlowSpec规则的接口标识,当控制器确定出需要应用FlowSpec规则的至少一个转发设备接口之后,通过接口标识与转发设备接口的映射关系,控制器获取到需要应用FlowSpec规则的至少一个转发设备接口对应的至少一个接口标识,该控制器生成应用接口规则,应用接口规则包括:接口标识集合,在该接口标识集合中包括需要应用FlowSpec规则的至少一个转发设备接口对应的至少一个接口标识。
其中,控制器确定应用接口规则为接口标识集合,则控制器向转发设备发送携带有接口标识集合的FlowSpec消息,转发设备接收该FlowSpec规则之后,可以从接口标识集合获取到需要应用FlowSpec规则的至少一个转发设备接口对应的至少一个接口标识,从而转发设备可以确定在本地设备对应的转发设备接口中是否存在该需要应用FlowSpec规则的至少一个转发设备接口对应的至少一个接口标识。
在本发明的一些实施例中,转发设备接口根据控制器的预先配置归属到不同的接口组中。在这种实现场景下,控制器可以通过如下方式确定应用接口规则的具体实现方式,步骤203控制器根据所述需要应用FlowSpec规则的至少一个转发设备接口生成应用接口规则,具体可以包括如下步骤:
C1、控制器确定需要应用FlowSpec规则的至少一个转发设备接口所属的接口组;
C2、控制器获取需要应用FlowSpec规则的至少一个转发设备接口所属的接口组对应的接口组标识;
C3、控制器生成应用接口规则,应用接口规则包括:接口组标识。
其中,控制器接收到转发设备发送的转发设备的接口标识,则控制器可以配置使用FlowSpec规则的转发设备的接口标识,当控制器确定出需要应用FlowSpec规则的至少一个转发设备接口之后,通过接口组标识与接口标识的映射关系,控制器获取需要应用FlowSpec规则的至少一个转发设备接口所属的接口组对应的接口组标识,该控制器确定应用接口规则通过接口组标识来实现,若控制器确定出需要应用FlowSpec规则的至少一个转发设备接口所属的接口组对应的接口组属于多个不同的接口组标识,则控制器需要分别确定每个接口组对应的接口组标识。
控制器生成应用接口规则之后,则控制器向转发设备发送携带有接口组标识的FlowSpec消息,转发设备接收该FlowSpec消息之后,可以从FlowSpec消息获取到接口组标识,再通过该接口组标识获取到需要应用FlowSpec规则的至少一个转发设备接口对应的至少一个接口标识,从而转发设备可以确定在本地设备对应的转发设备接口中是否存在需要应用FlowSpec规则的至少一个转发设备接口。
进一步的,在本发明的一些实施例中,步骤C1控制器确定需要应用FlowSpec规则的至少一个转发设备接口所属的接口组之前,本发明实施例提供的FlowSpec消息的处理方法,还可以包括如下步骤:
D1、控制器创建接口组的标识和/或接口组包括的转发设备接口的接口标识;
D2、控制器向转发设备发送接口组的标识和/或接口组包括的转发设备接口的接口标识。
其中,控制器可以预配置接口组标识,同时配置该接口组包括哪些转发设备接口。举例说明,控制器可以预先配置两个接口组分别为接口组A和接口组B,对于配置好的两个接口组可以分别配置各个接口组具体包括的转发设备接口的接口标识,例如配置接口组A包括接口标识1和接口标识2,配置接口组B包括接口标识1和接口标识3,其中,转发设备的转发设备接口标识1可以同时属于两个接口组,也可以根据实际场景配置其属于某一个接口组,此处不做限定。当控制器完成接口组的预配置之后,控制器可以将步骤D1中配置好的接口组信息发放给转发设备,从而转发设备可以获取到接口组和接口标识的映射关系。
在本发明的一些实施例中,步骤203控制器根据所述需要应用FlowSpec规则的至少一个转发设备接口生成应用接口规则,具体可以包括如下步骤:
E1、控制器生成应用接口规则,应用接口规则包括:业务筛选条件,业务筛选条件用于从设备接口信息中筛选出需要应用FlowSpec规则的至少一个转发设备接口。
其中,当控制器确定出需要应用FlowSpec规则的至少一个转发设备接口之后,控制器可以根据需要应用FlowSpec规则的至少一个转发设备接口配置业务筛选条件,该控制器确定应用接口规则可以为业务筛选条件,业务筛选条件也可以称为接口过滤规则,在该业务筛选条件用于筛选出需要应用FlowSpec规则的至少一个转发设备接口,即控制器根据能够筛选出需要应用FlowSpec规则的至少一个转发设备接口的条件来配置业务筛选条件。
控制器生成应用接口规则,应用接口规则包括:业务筛选条件,则控制器向转发设备发送携带有业务筛选条件的FlowSpec消息,转发设备接收该FlowSpec消息之后,可以根据业务筛选条件来匹配该转发设备本地的转发设备接口,从而转发设备可以确定在本地转发设备接口中是否存在需要应用FlowSpec规则的至少一个转发设备接口。
在本发明的一些实施例中,步骤204控制器向所述转发设备发送FlowSpec消息,具体可以包括如下步骤:
F1、控制器通过BGP路由属性信息向转发设备发送FlowSpec消息,BGP路由属性信息承载有应用接口规则。
具体的,控制器向转发设备发送携带有应用接口规则的FlowSpec消息时,该控制器可以具体使用BGP路由属性信息来承载应用接口规则。例如可以在BGP路由属性信息的已有字段中添加应用接口规则,也可以在BGP路由属性信息中扩展出新的字段来添加应用接口规则,详见后续应用场景的举例说明。
进一步的,在本发明的一些实施例中,BGP路由属性信息包括如下信息中的至少一种:流扩展属性(英文名称:Flow Extended Attribute)信息、接口组(英文名称:InterfaceGroup)的扩展团队属性(英文全称:Extended Communities Attribute,英文简称:ECA)信息和业务筛选条件属性Service filter Attribute信息。后续实施例中对BGP路由属性信息进行详细举例说明。
通过前述实施例对本发明的举例说明可知,由于转发设备向控制器上报该转发设备自身的转发设备接口信息,因此控制器在下发FlowSpec规则时可以根据接收到的转发设备接口信息来进行应用该FlowSpec规则的转发设备接口配置,从而控制器可以具体配置哪个转发设备接口或者哪些转发设备接口可以需要应用该FlowSpec规则,并生成相应的应用接口规则。本发明实施例中控制器可以控制一条FlowSpec规则应用到转发设备中灵活指定的转发设备接口上,从而实现按照用户需求自动、灵活指定流规则应用的范围,从而控制器可以实现对FlowSpec规则的业务精细化控制,解决目前对转发设备的业务流控制不够精细的问题。
前述实施例从控制器一侧说明了本发明实施例提供的FlowSpec消息的处理方法,接下来从转发设备一侧说明本发明实施例提供的FlowSpec消息的处理方法,请参阅图3所示,本发明一个实施例提供的FlowSpec消息的处理方法,可以包括如下步骤:
301、转发设备向控制器上报该转发设备自身的转发设备接口信息。
在本发明实施例中,控制器是控制面设备,该控制器可以和转发设备进行信息交互。例如控制器可以通过BGP和转发设备进行通信。举例说明,本发明实施例提供的转发设备可以是支持BGP协议并和其他设备建立BGP协议会话的设备。例如该转发设备可以是PE设备,该转发设备也可以是CE设备。
在本发明实施例中,控制器和转发设备之间可以建立BGP会话,转发设备通过BGP会话向控制器上报该转发设备自身的转发设备接口信息,转发设备上报的转发设备接口可以是指物理接口,也可以指逻辑接口。例如转发设备可以是PE设备,PE设备向控制器上报该PE设备自身的AC接口标识。控制器通过BGP会话可以接收到转发设备上报的转发设备接口信息。其中,本发明实施例中控制器可以和多个转发设备分别建立BGP会话,每个转发设备都可以独立执行前述的步骤301。
在本发明的一些实施例中,转发设备上报给控制器的转发设备接口信息,可以包括:转发设备的接口信息和转发设备的设备信息。其中,转发设备可以向控制器上报该转发设备的接口信息和转发设备的设备信息,转发设备的接口信息是指描述转发设备的转发设备接口的信息,转发设备的设备信息是指描述转发设备的设备信息。
在本发明的一些实施例中,转发设备的设备信息,包括:BGP标识符。它的值可以表示为Router ID,用于在整个网络中唯一标识一个转发设备,后续实施例中对转发设备的设备信息进行详细举例说明。若有多个转发设备则每个转发设备都可以向控制器上报该转发设备的BGP标识符。
在本发明的一些实施例中,转发设备的接口信息,包括如下信息中的至少一种:接口标识符信息、接口描述信息、接口服务信息和接口组信息。其中,转发设备的接口信息是IEEE802.1AB中定义出的,接口信息是关于接口的附加描述,例如描述接口当前的业务用途等。具体的,接口标识符信息用于标识转发设备的转发设备接口,接口描述信息是指描述转发设备的转发设备接口的信息,接口服务信息是描述接口的服务类型等,例如接口服务信息可以是L3VPN或者L2VPN或者EVPN等。接口组信息的取值可以是接口组ID,可以是一个32比特位的数值,也可以是UUID。后续实施例中对转发设备的转发设备接口信息进行详细举例说明。
进一步的,在本发明的一些实施例中,接口服务信息的类型是如下信息中的一种:虚拟专用局域网业务信息、虚拟专线业务信息、EVPN信息和三层虚拟专用网信息,具体可以结合应用场景来确定接口服务信息的具体类型。
在本发明的另一些实施例中,接口服务信息,可以包括如下信息中的至少一种:虚拟专用网实例名称信息、虚拟专用网实例标识信息、路由区分符信息、路由入口目标、路由出口目标和以太网段标识符。后续实施例中对转发设备的转发设备接口服务信息进行详细举例说明。
在本发明的一些实施例中,步骤301转发设备向控制器上报该转发设备自身的转发设备接口信息,包括:
转发设备通过边界网关协议链路状态BGP-LS向控制器上报该转发设备自身的转发设备接口信息。
在目前的BGP-LS的相关草案中,BGP-LS特指通过基于BGP散播链路状态的协议机制,该BGP-LS被定义用来收集IGP、BGP协议以及静态配置的拓扑信息(例如节点、链路、前缀、是否携带带宽信息等属性),主要用于为PCE等集中计算路径的控制设备提供拓扑信息,供其计算路径,从而实现网络路由的优化。但是目前的BGP-LS无法实现对设备的业务流进行精细化控制。本发明实施例中控制器和转发设备可以应用于BGP-LS的应用场景下,则转发设备可以通过BGP-LS协议上报该转发设备自身的L2层转发设备接口信息,从而解决目前的BGP-LS只能收集L3层接口信息的问题,本发明实施例中对BGP-LS扩展收集接口的信息,尤其是能收集L2层转发设备接口的信息。
302、转发设备接收控制器发送的FlowSpec消息,并从FlowSpec消息中获取到应用接口规则和FlowSpec规则。
在本发明实施例中,控制器可以通过BGP会话向转发设备发送携带有应用接口规则的FlowSpec消息。其中,该应用接口规则可以用于转发设备确定需要应用FlowSpec规则的至少一个转发设备接口。
303、转发设备根据应用接口规则确定转发设备的转发设备接口中是否存在需要应用FlowSpec规则的至少一个转发设备接口。
在本发明实施例中,转发设备从FlowSpec消息获取到应用接口规则之后,转发设备可以进一步确定该应用接口规则所指示的具体内容,应用接口规则由控制器一侧配置,转发设备可以根据控制器采用的应用接口规则的配置方式完成对应用接口规则的解析。该应用接口规则的实现方式可以有多种,接下来进行详细说明转发设备通过应用接口规则实现对需要应用FlowSpec规则的至少一个转发设备接口的获取。
在本发明的一些实施例中,转发设备向控制器上报的是转发设备的转发设备接口标识,在这种实现场景下,转发设备可以通过如下方式确定应用接口规则的具体实现方式,当应用接口规则为接口标识集合时,步骤303转发设备根据应用接口规则确定转发设备的转发设备接口中是否存在需要应用FlowSpec规则的至少一个转发设备接口,具体可以包括如下步骤:
G1、转发设备从接口标识集合中获取到接口标识;
G2、转发设备从转发设备的转发设备接口对应的接口标识中查找是否存在接口标识集合中的接口标识。
其中,转发设备接收该FlowSpec消息之后,转发设备从FlowSpec消息中获取到接口标识集合,转发设备可以从接口标识集合获取到接口标识,从而转发设备从本地的转发设备接口对应的转发设备接口标识中查找是否存在至少一个接口标识。
在本发明的一些实施例中,转发设备接口根据控制器的预先配置归属到不用的接口组中。在这种实现场景下,转发设备可以通过如下方式确定应用接口规则的具体实现方式,当应用接口规则为接口组标识时,步骤303转发设备根据应用接口规则确定转发设备的转发设备接口中是否存在需要应用FlowSpec规则的至少一个转发设备接口,具体可以包括如下步骤:
H1、转发设备根据接口组标识获取到接口组;
H2、转发设备从转发设备的转发设备接口中查找是否存在接口组中包括的转发设备接口。
其中,转发设备接收该FlowSpec消息之后,转发设备从FlowSpec消息中获取到接口组标识,转发设备可以从接口组标识确定出该接口组标识对应于接口组,则该接口组中的哪个或哪些转发设备接口属于需要应用FlowSpec规则的至少一个转发设备接口,从而转发设备可以确定在本地的转发设备接口中是否存在接口组中包括的转发设备接口。
进一步的,在本发明的一些实施例中,步骤303转发设备根据应用接口规则确定转发设备的转发设备接口中是否存在需要应用FlowSpec规则的至少一个转发设备接口之前,本发明实施例提供的FlowSpec消息的处理方法还包括:
I1、转发设备接收控制器发放的接口组的标识和接口组包括的转发设备接口的接口标识;
I2、转发设备根据接口组的标识和/或接口组包括的转发设备接口的接口标识筛选转发设备的转发设备接口,维护转发设备的转发设备接口与接口组之间的关联关系。
其中,控制器可以预配置接口组的标识,同时配置该接口组包括哪些设备接口。当控制器完成接口组的预配置之后,控制器可以将配置好的接口组信息发放给转发设备,从而转发设备可以获取到接口组和接口标识的映射关系。转发设备可以根据接口组的标识和接口组包括的转发设备接口的接口标识筛选转发设备的转发设备接口,维护转发设备的转发设备接口与接口组之间的关联关系。转发设备在控制器下发接口组信息后,对于转发设备的转发设备接口中与控制器下发的接口组信息有关联关系的转发设备接口进行维护,从而可以在执行步骤H1和步骤H2时查询接口组和接口组标识的映射关系,并通过接口组确定该接口组包括的转发设备接口。
在本发明的一些实施例中,转发设备向控制器上报的是转发设备的转发设备接口标识,在这种实现场景下,转发设备可以通过如下方式确定应用接口规则的具体实现方式,当应用接口规则为业务筛选条件时,步骤303转发设备根据应用接口规则确定转发设备的转发设备接口中是否存在需要应用FlowSpec规则的至少一个转发设备接口,具体可以包括如下步骤:
J1、转发设备从转发设备的转发设备接口中查找是否存在满足业务筛选条件的转发设备接口,若转发设备的转发设备接口中存在满足业务筛选条件的转发设备接口,则确定转发设备中存在需要应用FlowSpec规则的至少一个转发设备接口,若转发设备的转发设备接口中不存在满足业务筛选条件的转发设备接口,则确定转发设备的转发设备接口中不存在需要应用FlowSpec规则的至少一个转发设备接口。
其中,业务筛选条件由控制器配置,转发设备从FlowSpec消息中获取到业务筛选条件之后,转发设备可以使用业务筛选条件来筛选该转发设备的转发设备接口,从而确定转发设备的转发设备接口中是否存在需要应用FlowSpec规则的至少一个转发设备接口。
304、当转发设备的转发设备接口中存在需要应用FlowSpec规则的至少一个转发设备接口时,转发设备将FlowSpec规则安装并应用到需要应用FlowSpec规则的至少一个转发设备接口上。
在本发明实施例中,通过步骤303中的判断过程,当转发设备的转发设备接口中存在需要应用FlowSpec规则的至少一个转发设备接口时,说明在转发设备中存在可以匹配FlowSpec规则的需要应用FlowSpec规则的至少一个转发设备接口,接下来可以将FlowSpec规则安装并应用到转发设备中的需要应用FlowSpec规则的至少一个转发设备接口上。本发明实施例中,转发设备将FlowSpec规则应用到需要应用FlowSpec规则的至少一个转发设备接口上,即限定只有需要应用FlowSpec规则的至少一个转发设备接口才能收到匹配FlowSpec规则的报文,才能进行FlowSpec规则的处理。本发明实施例中,若转发设备中还存在除需要应用FlowSpec规则的至少一个转发设备接口以外的其他转发设备接口,由于控制器配置的是只有需要应用FlowSpec规则的至少一个转发设备接口才能匹配FlowSpec规则,因此转发设备中的其它转发设备接口不能进行FlowSpec规则的匹配处理,从而实现对FlowSpec规则的精细化处理,具体可以将业务配置到接口层面,因此可以实现对控制器下发业务的精细化处理。需要说明的是,本发明实施例中转发设备中存在需要应用FlowSpec规则的至少一个转发设备接口时才能执行步骤304,并且转发设备中只有需要应用FlowSpec规则的至少一个转发设备接口应用了FlowSpec规则,而并不是应用则所有设备接口收到的报文都要进行FlowSpec规则的匹配处理。
通过前述实施例对本发明的举例说明可知,由于本发明实施例中转发设备可以向控制器上报各自的转发设备接口信息,因此控制器在下发FlowSpec规则时可以根据接收到的转发设备接口信息来进行应用该FlowSpec规则的转发设备接口配置,从而控制器可以具体配置哪个转发设备接口或者哪些转发设备接口可以需要应用该FlowSpec规则,并生成相应的应用接口规则。本发明实施例中控制器可以控制一条FlowSpec规则应用到转发设备中灵活指定的转发设备接口上,从而实现按照用户需求自动、灵活指定流规则应用的范围,达到对业务的精细化控制。
为便于更好的理解和实施本发明实施例的上述方案,下面举例相应的应用场景来进行具体说明。
在目前的链路层发现协议(英文全称:Link Layer Discovery Protocol,英文简称:LLDP)中,虽然可以在二层域内散播转发设备的节点和物理接口信息,网络控制器通过网络配置(英文名称:Netconf)读取转发设备上LLDP的管理信息库(英文全称:MIB,英文简称:Management Information Base),获取LLDP发现的L2拓扑信息。但是该方法的传输效率和实时性不满足网络控制器收集网络拓扑的性能要求,也不支持发现二层逻辑接口(例如L2隧道接口或捆绑接口)和接口上挂载的业务信息。
本发明提供的实施例中,控制器可以收集网络转发设备的转发设备接口信息(尤其是网络边缘转发设备的外连接口,例如L2业务接口)的方法,便于网络控制器集中部署应用在指定设备接口上的业务策略,例如在所有指定EVPN实例的AC接口上部署导流策略,具体实现表现为进一步扩展BGP FlowSpe规则,在散播FlowSpec消息的同时,携带应用接口规则,例如接口标识集合、接口组ID或接口过滤规则信息。接下来以控制器具体为扩展的路由反射器,例如控制器支持本实施例中描述的控制器一侧实现的FlowSpec消息的处理方法,转发设备具体为BGP路由器,BGP路由器可以根据应用接口规则指示BGP路由器选择本地合适的转发设备接口来应用该FlowSpec规则。
本发明实施例的一种应用场景下,可以包括如下的具体实施步骤:
1、在L2/L3VPN网络中BGP路由器(例如PE)通过扩展的BGP-LS将转发设备接口信息上报给网络控制器,例如PE可以上报的转发设备接口信息包括:AC接口等接口(包括逻辑接口)信息(包括接口描述、节点描述),从而可以形成带挂载业务信息的网络拓扑信息。其中,设备接口上配置EVPN/L3VPN业务,该接口就是业务挂载点,这个就是设备接口标识和接口上配置的业务信息定义出来,由BGP路由器通过本发明实施例扩展的BGP协议报给控制器。
2、控制器根据用户策略创建FlowSpec规则,并且根据网络拓扑指定应用的转发设备接口(即前述的需要应用FlowSpec规则的至少一个转发设备接口),从而生成应用接口规则。例如VPN1的所有AC接口,控制器可以生成应用接口规则,然后携带在FlowSpec规则,例如控制器从网络拓扑中筛选获取条件的所有AC接口作为FlowSpec规则的附加属性下发给其客户端BGP路由器。
3、BGP路由器收到FlowSpec消息后,做如下至少一种检查:
(1)如果该FlowSpec消息携带了接口标识集合(可以在特定的路径属性中携带),就检查该接口标识集合中是否有本地的转发设备接口。
(2)如果该FlowSpec消息携带了接口组ID,就检查转发设备的转发设备接口是否有该接口组ID对应的转发设备接口。其中,一个接口组中可能携带一个或多个接口标识,接口标识可以是某个UUID,或者是设备ID和接口ID的组合。
(3)如果该FlowSpec消息携带了应用接口的业务筛选条件(也可以称为业务属性过滤条件、接口过滤规则等),就根据该业务属性过滤条件筛选转发设备的转发设备接口,是否有匹配业务属性过滤条件的转发设备接口。
BGP路由器通过上述步骤(1)、(2)、(3)中任一种的判断过程,在确定转发设备接口包括需要应用FlowSpec规则的至少一个转发设备接口,BGP路由器就校验安装该FlowSpec规则,并指定应用到需要应用FlowSpec规则的至少一个转发设备接口上。将FlowSpec规则应用到需要应用FlowSpec规则的至少一个转发设备接口上,即限定只有需要应用FlowSpec规则的至少一个转发设备接口收到的报文才进行FlowSpec规则的匹配处理。不应用则所有接口收到的报文都要进行FlowSpec规则的匹配处理。其中,BGP FlowSpec(RFC5575)自己定义了FlowSpec规则的合法性校验机制,安装就是把合法并优化出来的FlowSpec规则下发到转发设备的转发面,指导转发设备转发面处理接到的报文。
接下来对扩展BGP-LS的实现方式进行说明,请参阅图4-a所示,图4-a为本发明实施例提供的接口NLRI的数据结构示意图,扩展BGP-LS支持接口网络层可达信息(英文全称:Network Layer Reachability Information,英文简称:NLRI),其中,预定义(英文全称:ToBe Determined,英文简称:TBD)NLRI Type=5,具体定义如图4-a所示。其中,协议-标识(Protocol-ID)的数值设置为5,表示静态配置类型(Static configuration)。标识符(Identifier)表示拓扑信息的路由域,占64bits,对于L2AC接口可以使用特定配置的值。节点描述符(Node Descriptors)由一个或多个子TLV(Type,Length,Value),后续实施例中称为Sub-TLV,这是一种可扩展的选项定义方式。Node Descriptors和InterfaceDescriptors是变量(variable)。进一步的,Node Descriptors必须要包括BGP标识符(Identifier)这个Sub-TLV,它的值可以填成为Router ID,用于在整个网络中唯一标识一个BGP路由器。BGP路由器是支持BGP协议并和其他设备建BGP协议会话的设备。例如PE或者CE。请参阅图4-b所示,图4-b为本发明实施例提供的一种扩展节点描述(Extended NodeDescriptor)Sub-TLVs的数据结构示意图。Extended Node Descriptor Sub-TLVs中包括BGP Identifier,Sub-TLV名称为TBD1是必选(Mandatory)的,占用4个比特。
在本发明的一些实施例中,接口描述符(Interface Descriptors)由一个或多个Sub-TLV组成,必须要包括接口标识符(Interface Identifier)这个Sub-TLV,具体取值可以为Interface Identifier值,例如它的值参考IEEE802.1AB 8.5.3章节的定义,可以是接口名称,在一个BGP路由器上唯一标识一个接口(该接口可以是物理接口,也可以是逻辑接口)。可选携带其他接口描述信息(Interface Description)、接口服务(InterfaceService)和接口组(Interface Group)等Sub-TLV。Interface Group Sub-TLV的值为该接口归属的接口组ID,接口组ID全网统一部署配置,最佳的,可以为由控制器在单个AS部署,避免跨域散播。如果一个Interface NLRI携带多个Interface Group Sub-TLV,则该接口归属多个的接口组,如果不携带Interface Group Sub-TLV,则该接口不属于任何接口组。其中,接口描述信息是Ref IEEE802.1AB 8.5.5中的定义,就是关于接口的附加描述,例如描述接口当前的业务用途等。
请参阅图4-c所示,图4-c为本发明实施例提供的一种扩展接口描述(ExtendedInterface Descriptor)Sub-TLVs的数据结构示意图,Extended Interface DescriptorSub-TLVs共包括:TBD2(必选)、TBD3可选((Optional))、TBD4~7(可选)和TBD14(可选),TBD2是强制写入的,可表示Interface Identifier,TBD3、TBD4~7和TBD14的长度都可选的,可结合应用场景来确定。具体的,TBD3可表示Interface Description,TBD4~7可表示Interface Service,TBD14可表示Interface Group,Interface Identifier和InterfaceDescription的取值都可以参考IEEE802.1AB 8.5.3和IEEE802.1AB 8.5.5中的定义,Interface Service和Interface Group为本发明实施例中记载的取值方式,例如,Interface Service的取值可以详见后续图4-e中描述的Sub TLVs,例如图4-e中的值(value),Interface Group可以是UUID或者其它的整型数。
在本发明的一些实施例中,请参阅图4-d所示,图4-d为本发明实施例提供的一种接口服务(Interface Service)Sub-TLVs的数据结构示意图,Interface Service Sub-TLVs的参考定义如4-d所示,Interface Service Sub-TLVs包括:TBD4(可选)、TBD5(可选)、TBD6(可选)和TBD7(可选),其中,TBD4(可选)表示L2VPN(VPLS),TBD5(可选)表示L2VPN(VPWS),TBD6(可选)表示EVPN,TBD7(可选)表示L3VPN,L2VPN(VPLS)、L2VPN(VPWS)、EVPN和L3VPN的长度都可选的,可结合应用场景来确定。另外,L2VPN(VPLS)、L2VPN(VPWS)、EVPN和L3VPN取值可以详见后续图4-e中描述的Sub TLVs,例如图4-e中的值(value)。
进一步的,在本发明的一些实施例中,在每种Interface Service Sub-TLV都可以包含如下VPN名称(name)、RD、入口(Import)RT、出口(Export)RT、ESI等Sub-TLV,如图4-e所示,图4-e为本发明实施例提供的一种扩展服务(Extended Service)Sub-TLVs的数据结构示意图,在Extended Service Sub-TLVs中,TBD8(必选)表示VPN name,其长度是可选的,VPN name的取值可以是VPN实例名称。TBD9(可选)表示RD,其取值可以是RD值。TBD10(可选)表示Import RT,其取值可以是RT值。TBD11(可选)表示Export RT,其取值可以是RT值,RD、Import RT、Export RT的长度都可以是8个bits,TBD12(可选)表示ESI,其长度是可选的,其取值可以是ESI值。一个Interface Service Sub-TLV可以包含多个Import RT或Export RTSub-TLV。当然ESI Sub-TLV仅能包含在EVPN Service的Sub-TLV中。
前述内容描述了转发设备的转发设备接口信息的实现场景,接下来对携带应用接口规则的FlowSpec规则进行说明,至少存在如下的3种可实现的方案。
在第一种可实现方案中,主要包括如下步骤:
1、控制器往一个或多个接口组上应用FlowSpec规则,下发BGP FlowSpec规则给各个BGP路由器,携带一个或多个特定类型的BGP路由属性,该BGP路由属性中携带该规则应用的接口标识集合信息。例如在Flow Extended Attribute中携带Bound interface sub-TLVs。
请参阅图4-f所示,图4-f为本发明实施例提供的一种边界接口(Bound interfac)Sub-TLVs的数据结构示意图,TBD15可以为Bound interface sub-TLV,Bound interfacesub-TLV的长度可以是2个字节(Octets),在Bound interface sub-TLV的定义中,NodeDescriptor和Interface Descriptor的定义和BGP-LS的Interface NLRI中对应的定义相同。
2、BGP路由器收到该FlowSpec规则后,获取该FlowSpec规则携带的接口标识集合,检查该接口标识集合中是否有转发设备接口,将FlowSpec规则安装应用到这些转发设备接口上,FlowSpec规则也可以被称作FlowSpec路由。
在第二种可实现方案中,主要包括如下步骤:
1、控制器根据业务策略创建接口组,将一组符合业务需求(例如EVPN网络的所有AC接口)接口加入到对应的接口组信息。该业务策略用于创建接口组。
2、控制器下发BGP-LS的Interface NLRI(携带Interface Group Sub-TLV)给各个BGP路由器,各个BGP路由器筛选本地的转发设备接口,保存转发设备接口和InterfaceGroup ID的关联关系,例如在接口属性配置关联的1个或多个接口组ID)。
3、控制器往一个或多个接口组上应用FlowSpec规则,下发BGP FlowSpec规则给各个BGP路由器,携带一个或多个Interface Group的扩展团队属性(Extended CommunitiesAttribute),可以使用flowspec interface-set ECA,或者携带一个或多个特定类型的BGP路由属性(例如Flow Extended Attribute),该BGP路由属性中携带一个或多个InterfaceGroup Sub-TLV。该Interface Group Sub-TLV的定义和BGP-LS的Interface NLRI中Interface Group Sub-TLV的定义相同。
4、BGP路由器收到该FlowSpec规则后,获得该FlowSpec规则应用到的接口组,将FlowSpec规则安装应用到这些接口组对应的转发设备接口上。
在第三种可实现方案中,主要包括如下步骤:
1、控制器往一种业务类型的接口(例如EVPN指定EVI绑定的接口)上应用FlowSpec规则,携带一个或多个特定类型的BGP路由属性(例如Flow Extended Attribute),该BGP路由属性中携带业务属性过滤条件(Servicefilter sub-TLV)。Service filter sub-TLV的定义和BGP-LS的Interface NLRI中Interface Service的定义相同。
2、BGP路由器收到该FlowSpec规则后,获取该FlowSpec规则携带的业务属性过滤条件,根据该业务属性过滤条件筛选本地的转发设备接口,将FlowSpec规则安装应用到匹配业务属性过滤条件的转发设备接口上。
在本发明前述的实施例中,控制器可以包括网络控制器、扩展的PCE设备,控制器通过BGP-LS收集转发设备的L2接口信息(例如包括接口ID和关键业务属性)。控制器通过BGP-FlowSpec携带应用接口规则,指示转发的BGP路由器FlowSpec路由应用到哪些设备接口上,只有这些选中的转发设备接口中有转发设备接口时才安装该FlowSpec路由,从而能够支持网络边缘的业务控制。
通过前述对本发明实施例的举例说明可知,本发明实施例中不仅可以通过BGP-LS收集网络内部的拓扑信息,同时收集网络边缘的外联接口信息,形成更完整的网络拓扑数据库,供各种业务应用使用,不仅仅支持网络内部的路径计算,同时支持网络边缘的业务控制,可以实现精细流接入控制策略。根据业务特性定义接口组,然后定义FlowSpec规则应用到这些接口组上,这种可以针对指定的业务和指定流做FlowSpec规则支持的动作,例如重定向、限速。为BGP FlowSpec路由应用到网络L2/L3层接口上,提供接口信息支撑和支持FlowSpec路由携带应用接口规则散播,从而实现基于设备接口的精细流业务控制。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
为便于更好的实施本发明实施例的上述方案,下面还提供用于实施上述方案的相关装置。
请参阅图5-a所示,本发明实施例提供的一种控制器500,可以包括:接收模块501、接口配置模块502、应用接口规则生成模块503和发送模块504,其中,
接收模块501,用于接收转发设备上报的转发设备接口信息;
接口配置模块502,用于从接收到的所述转发设备接口信息中选择出需要应用FlowSpec规则的至少一个转发设备接口;
应用接口规则生成模块503,用于根据所述需要应用FlowSpec规则的至少一个转发设备接口生成应用接口规则,所述应用接口规则用于指示所述转发设备确定出能够应用所述FlowSpec规则的转发设备接口;
发送模块504,用于向所述转发设备发送FlowSpec消息,所述FlowSpec消息包括所述应用接口规则和所述FlowSpec规则。
在本发明的一些实施例中,所述转发设备接口信息,包括:转发设备接口的接口标识;
应用接口规则生成模块503,具体用于获取所述需要应用FlowSpec规则的至少一个转发设备接口对应的至少一个接口标识;生成应用接口规则,所述应用接口规则包括:接口标识集合,所述接口标识集合包括:所述需要应用FlowSpec规则的至少一个转发设备接口对应的至少一个接口标识
在本发明的一些实施例中,所述应用接口规则生成模块503,具体用于确定所述需要应用FlowSpec规则的至少一个转发设备接口所属的接口组;获取所述需要应用FlowSpec规则的至少一个转发设备接口所属的接口组对应的接口组标识;生成应用接口规则,所述应用接口规则包括:所述接口组标识。
进一步的,在本发明的一些实施例中,请参阅图5-b所示,控制器500,还包括:接口组处理模块505,用于创建接口组标识和接口组包括的转发设备接口的接口标识;所述转发设备发送创建的接口组标识和接口组包括的转发设备接口的接口标识。
在本发明的一些实施例中,所述应用接口规则生成模块503,具体用于生成应用接口规则,所述应用接口规则包括:业务筛选条件,所述业务筛选条件用于从所述转发设备接口信息中筛选出所述需要应用FlowSpec规则的至少一个转发设备接口。
在本发明的一些实施例中,所述发送模块503,具体用于通过BGP路由属性信息向所述转发设备发送FlowSpec消息,所述BGP路由属性信息承载有所述应用接口规则。
在本发明的一些实施例中,所述BGP路由属性信息包括如下信息中的至少一种:流扩展属性Flow Extended Attribute信息、接口组Interface Group的扩展团队属性ECA信息和业务筛选条件属性Service filter Attribute信息。
在本发明的一些实施例中,所述接收模块501,具体用于通过边界网关协议链路状态BGP-LS协议接收转发设备上报的转发设备接口信息。
通过前述实施例对本发明的举例说明可知,由于转发设备向控制器上报该转发设备自身的转发设备接口信息,因此控制器在下发FlowSpec规则时可以根据接收到的转发设备接口信息来进行应用该FlowSpec规则的转发设备接口配置,从而控制器可以具体配置哪个转发设备接口或者哪些转发设备接口可以需要应用该FlowSpec规则,并生成相应的应用接口规则。本发明实施例中控制器可以控制一条FlowSpec规则应用到转发设备中灵活指定的转发设备接口上,从而实现按照用户需求自动、灵活指定流规则应用的范围,达到对业务的精细化控制。
请参阅图6-a所示,本发明实施例提供的一种转发设备600,可以包括:发送模块601、接收模块602、接口识别模块603和FlowSpec规则应用模块604,其中,
发送模块601,用于向控制器上报该转发设备自身的转发设备接口信息;
接收模块602,用于接收所述控制器发送的FlowSpec消息,并从所述FlowSpec消息中获取到应用接口规则和FlowSpec规则;
接口识别模块603,用于根据所述应用接口规则确定所述转发设备的转发设备接口中是否存在需要应用FlowSpec规则的至少一个转发设备接口;
FlowSpec规则应用模块604,用于当所述转发设备的转发设备接口中存在所述需要应用FlowSpec规则的至少一个转发设备接口时,将所述FlowSpec规则应用到所述需要应用FlowSpec规则的至少一个转发设备接口上。
在本发明的一些实施例中,当所述应用接口规则为接口标识集合时,所述接口识别模块603,具体用于从所述接口标识集合中获取到接口标识;从所述转发设备的转发设备接口对应的接口标识中查找是否存在所述接口标识集合中的接口标识。
在本发明的一些实施例中,当所述应用接口规则具体为接口组标识时,所述接口识别模块603,具体用于根据所述接口组标识获取到接口组;从所述转发设备的转发设备接口中查找是否存在所述接口组中包括的转发设备接口。
在本发明的一些实施例中,请参阅图6-b所示,所述转发设备600还包括:接口组处理模块605,用于所述接口识别模块603根据所述应用接口规则确定所述转发设备的转发设备接口中是否存在需要应用FlowSpec规则的至少一个转发设备接口之前,接收所述控制器发放的接口组标识和接口组包括的转发设备接口的接口标识;根据所述控制器发放的接口组标识和接口组包括的转发设备接口的接口标识筛选所述转发设备的转发设备接口,维护所述转发设备的转发设备接口与接口组之间的关联关系。
在本发明的一些实施例中,当所述应用接口规则为业务筛选条件时,所述接口识别模块603,具体用于从所述转发设备的转发设备接口中查找是否存在满足所述业务筛选条件的转发设备接口,若所述转发设备的转发设备接口中存在满足所述业务筛选条件的转发设备接口,则确定所述转发设备中存在所述需要应用FlowSpec规则的至少一个转发设备接口,若所述转发设备的转发设备接口中不存在满足所述业务筛选条件的转发设备接口,则确定所述转发设备的转发设备接口中不存在所述需要应用FlowSpec规则的至少一个转发设备接口。
在本发明的一些实施例中,所述转发设备接口信息,包括:转发设备的接口信息和转发设备的设备信息。
在本发明的一些实施例中,所述转发设备的设备信息,包括:BGP标识符Identifier。
在本发明的一些实施例中,转发设备的接口信息,包括如下信息中的至少一种:
接口标识符Interface Identifier信息、接口描述Interface Description信息、接口服务Interface Service信息和接口组Interface Group信息。
在本发明的一些实施例中,所述接口服务Interface Service信息的类型是如下信息中的一种:虚拟专用局域网业务VPLS信息、虚拟专线业务VPWS信息、以太网虚拟专用网EVPN信息和三层虚拟专用网L3VPN信息。
在本发明的一些实施例中,所述接口服务Interface Service信息,包括如下信息中的至少一种:虚拟专用网实例名称VPN Instance name信息、虚拟专用网实例标识VPNInstance ID信息、路由区分符RD信息、路由入口目标Import RT、路由出口目标Export RT和以太网段标识符ESI。
在本发明的一些实施例中,所述发送模块601,具体用于通过边界网关协议链路状态BGP-LS向控制器上报该转发设备自身的L2层设备接口信息。
需要说明的是,上述装置各模块/单元之间的信息交互、执行过程等内容,由于与本发明方法实施例基于同一构思,其带来的技术效果与本发明方法实施例相同,具体内容可参见本发明前述所示的方法实施例中的叙述,此处不再赘述。
通过前述实施例对本发明的举例说明可知,由于本发明实施例中转发设备可以向控制器上报各自的转发设备接口信息,因此控制器在下发FlowSpec规则时可以根据接收到的转发设备接口信息来进行应用该FlowSpec规则的转发设备接口配置,从而控制器可以具体配置哪个转发设备接口或者哪些转发设备接口可以需要应用该FlowSpec规则,并生成相应的应用接口规则。本发明实施例中控制器可以控制一条FlowSpec规则应用到转发设备中灵活指定的转发设备接口上,从而实现按照用户需求自动、灵活指定流规则应用的范围,达到对业务的精细化控制。
本发明实施例还提供一种计算机存储介质,其中,该计算机存储介质存储有程序,该程序执行包括上述方法实施例中记载的部分或全部步骤。
接下来介绍本发明实施例提供的另一种控制器,请参阅图7所示,控制器700包括:
接收器701、发射器702、处理器703和存储器704(其中控制器700中的处理器703的数量可以一个或多个,图7中以一个处理器为例)。在本发明的一些实施例中,接收器701、发射器702、处理器703和存储器704可通过总线或其它方式连接,其中,图7中以通过总线连接为例。
存储器704可以包括只读存储器和随机存取存储器,并向处理器703提供指令和数据。存储器704的一部分还可以包括非易失性随机存取存储器(英文全称:Non-VolatileRandom Access Memory,英文缩写:NVRAM)。存储器704存储有操作系统和操作指令、可执行模块或者数据结构,或者它们的子集,或者它们的扩展集,其中,操作指令可包括各种操作指令,用于实现各种操作。操作系统可包括各种系统程序,用于实现各种基础业务以及处理基于硬件的任务。
处理器703控制控制器700的操作,处理器703还可以称为中央处理单元(英文全称:Central Processing Unit,英文简称:CPU)。具体的应用中,控制器700的各个组件通过总线系统耦合在一起,其中总线系统除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线等。但是为了清楚说明起见,在图中将各种总线都称为总线系统。
上述本发明实施例揭示的方法可以应用于处理器703中,或者由处理器703实现。处理器703可以是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器703中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器703可以是通用处理器、数字信号处理器(英文全称:digital signal processing,英文缩写:DSP)、专用集成电路(英文全称:Application Specific Integrated Circuit,英文缩写:ASIC)、现成可编程门阵列(英文全称:Field-Programmable Gate Array,英文缩写:FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器704,处理器703读取存储器704中的信息,结合其硬件完成上述方法的步骤。
接收器701可用于接收输入的数字或字符信息,以及产生与控制器的相关设置以及功能控制有关的信号输入,发射器702可包括显示屏等显示设备,发射器702可用于通过外接接口输出数字或字符信息。
本发明实施例中,处理器703,用于执行如下步骤:
接收转发设备上报的转发设备接口信息;
从接收到的所述转发设备接口信息中选择出需要应用FlowSpec规则的至少一个转发设备接口;
根据所述需要应用FlowSpec规则的至少一个转发设备接口生成应用接口规则,所述应用接口规则用于指示所述转发设备确定出能够应用所述FlowSpec规则的转发设备接口;
向所述转发设备发送FlowSpec消息,所述FlowSpec消息包括所述应用接口规则和所述FlowSpec规则。
本发明一些实施例中,所述转发设备接口信息,包括:转发设备接口的接口标识;处理器703,具体用于执行如下步骤:
获取所述需要应用FlowSpec规则的至少一个转发设备接口对应的至少一个接口标识;
生成应用接口规则,所述应用接口规则包括:接口标识集合,所述接口标识集合包括:所述需要应用FlowSpec规则的至少一个转发设备接口对应的至少一个接口标识。
本发明的一些实施例中,处理器703,具体用于执行如下步骤:
确定所述需要应用FlowSpec规则的至少一个转发设备接口所属的接口组;
获取所述需要应用FlowSpec规则的至少一个转发设备接口所属的接口组对应的接口组标识;
生成应用接口规则,所述应用接口规则包括:所述接口组标识。
本发明的一些实施例中,处理器703,还用于执行如下步骤:确定所述需要应用FlowSpec规则的至少一个转发设备接口对应的接口标识所属的接口组之前,创建接口组标识和接口组包括的转发设备接口的接口标识;
向所述转发设备发送创建的接口组标识和接口组包括的转发设备接口的接口标识。
本发明的一些实施例中,处理器703,具体用于执行如下步骤:
生成应用接口规则,所述应用接口规则包括:业务筛选条件,所述业务筛选条件用于从所述转发设备接口信息中筛选出所述需要应用FlowSpec规则的至少一个转发设备接口。
本发明的一些实施例中,处理器703,具体用于执行如下步骤:
通过BGP路由属性信息向所述转发设备发送FlowSpec消息,所述BGP路由属性信息承载有所述应用接口规则。
本发明的一些实施例中,处理器703,具体用于执行如下步骤:
通过边界网关协议链路状态BGP-LS协议接收转发设备上报的转发设备接口信息。
接下来介绍本发明实施例提供的另一种转发设备,请参阅图8所示,转发设备800包括:
接收器801、发射器802、处理器803和存储器804(其中转发设备800中的处理器803的数量可以一个或多个,图8中以一个处理器为例)。在本发明的一些实施例中,接收器801、发射器802、处理器803和存储器804可通过总线或其它方式连接,其中,图8中以通过总线连接为例。
存储器804可以包括只读存储器和随机存取存储器,并向处理器803提供指令和数据。存储器804的一部分还可以包括NVRAM。存储器804存储有操作系统和操作指令、可执行模块或者数据结构,或者它们的子集,或者它们的扩展集,其中,操作指令可包括各种操作指令,用于实现各种操作。操作系统可包括各种系统程序,用于实现各种基础业务以及处理基于硬件的任务。
处理器803控制转发设备的操作,处理器803还可以称为CPU。具体的应用中,转发设备的各个组件通过总线系统耦合在一起,其中总线系统除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线等。但是为了清楚说明起见,在图中将各种总线都称为总线系统。
上述本发明实施例揭示的方法可以应用于处理器803中,或者由处理器803实现。处理器803可以是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器803中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器803可以是通用处理器、DSP、ASIC、FPGA或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器804,处理器803读取存储器804中的信息,结合其硬件完成上述方法的步骤。
本发明实施例中,处理器803,用于执行如下步骤:
向控制器上报该转发设备自身的转发设备接口信息;
接收所述控制器发送的FlowSpec消息,并从所述FlowSpec消息中获取到应用接口规则和FlowSpec规则;
根据所述应用接口规则确定所述转发设备的转发设备接口中是否存在需要应用FlowSpec规则的至少一个转发设备接口;
当所述转发设备的转发设备接口中存在所述需要应用FlowSpec规则的至少一个转发设备接口时,将所述FlowSpec规则应用到所述需要应用FlowSpec规则的至少一个转发设备接口上。
本发明的一些实施例中,当所述应用接口规则为接口标识集合时,处理器803,具体用于执行如下步骤:
从所述接口标识集合中获取到接口标识;
从所述转发设备的转发设备接口对应的接口标识中查找是否存在所述接口标识集合中的接口标识。
本发明的一些实施例中,当所述应用接口规则为接口组标识时,处理器803,具体用于执行如下步骤:
根据所述接口组标识获取到接口组;
从所述转发设备的转发设备接口中查找是否存在所述接口组中包括的转发设备接口。
在本发明的一些实施例中,处理器803,具体用于执行如下步骤:根据所述应用接口规则确定所述转发设备的转发设备接口中是否存在需要应用FlowSpec规则的至少一个转发设备接口之前,接收所述控制器发放的接口组标识和接口组包括的转发设备接口的接口标识;
根据所述控制器发放的接口组标识和接口组包括的转发设备接口的接口标识筛选所述转发设备的转发设备接口,维护所述转发设备的转发设备接口与接口组之间的关联关系。
在本发明的一些实施例中,当所述应用接口规则为业务筛选条件时,处理器803,具体用于执行如下步骤:
从所述转发设备的转发设备接口中查找是否存在满足所述业务筛选条件的转发设备接口,若所述转发设备的转发设备接口中存在满足所述业务筛选条件的转发设备接口,则确定所述转发设备中存在所述需要应用FlowSpec规则的至少一个转发设备接口,若所述转发设备的转发设备接口中不存在满足所述业务筛选条件的转发设备接口,则确定所述转发设备的转发设备接口中不存在所述需要应用FlowSpec规则的至少一个转发设备接口。
在本发明的一些实施例中,存储器804存储的转发设备接口信息,包括如下信息中的至少一种:接口标识符Interface Identifier信息、接口描述Interface Description信息、接口服务Interface Service信息和接口组Interface Group信息。
在本发明的一些实施例中,处理器803,具体用于执行如下步骤:通过边界网关协议链路状态BGP-LS向控制器上报该转发设备自身的转发设备接口信息。
前述实施例分别描述了本发明实施例提供的控制器和转发设备,接下来请参阅图9所示的FlowSpec消息的处理系统900,包括:如前述实施例中所述的控制器901和如前述实施例中所述的转发设备902。
另外需说明的是,以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。另外,本发明提供的装置实施例附图中,模块之间的连接关系表示它们之间具有通信连接,具体可以实现为一条或多条通信总线或信号线。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件的方式来实现,当然也可以通过专用硬件包括专用集成电路、专用CPU、专用存储器、专用元器件等来实现。一般情况下,凡由计算机程序完成的功能都可以很容易地用相应的硬件来实现,而且,用来实现同一功能的具体硬件结构也可以是多种多样的,例如模拟电路、数字电路或专用电路等。但是,对本发明而言更多情况下软件程序实现是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在可读取的存储介质中,如计算机的软盘、U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
综上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照上述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对上述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (29)

1.一种流规范FlowSpec消息的处理方法,其特征在于,包括:
控制器接收转发设备上报的转发设备接口信息;
所述控制器从接收到的所述转发设备接口信息中选择出需要应用FlowSpec规则的至少一个转发设备接口;
所述控制器根据所述需要应用FlowSpec规则的至少一个转发设备接口生成应用接口规则,所述应用接口规则用于指示所述转发设备确定出能够应用所述FlowSpec规则的转发设备接口;
所述控制器向所述转发设备发送FlowSpec消息,所述FlowSpec消息包括所述应用接口规则和所述FlowSpec规则。
2.根据权利要求1所述的方法,其特征在于,所述转发设备接口信息,包括:转发设备接口的接口标识;
所述控制器根据所述需要应用FlowSpec规则的至少一个转发设备接口生成应用接口规则,包括:
所述控制器获取所述需要应用FlowSpec规则的至少一个转发设备接口对应的至少一个接口标识;
所述控制器生成应用接口规则,所述应用接口规则包括:接口标识集合,所述接口标识集合包括:所述需要应用FlowSpec规则的至少一个转发设备接口对应的至少一个接口标识。
3.根据权利要求1所述的方法,其特征在于,所述控制器根据所述需要应用FlowSpec规则的至少一个转发设备接口生成应用接口规则,包括:
所述控制器确定所述需要应用FlowSpec规则的至少一个转发设备接口所属的接口组;
所述控制器获取所述需要应用FlowSpec规则的至少一个转发设备接口所属的接口组对应的接口组标识;
所述控制器生成应用接口规则,所述应用接口规则包括:所述接口组标识。
4.根据权利要求3所述的方法,其特征在于,所述控制器确定所述需要应用FlowSpec规则的至少一个转发设备接口对应的接口标识所属的接口组之前,所述方法还包括:
所述控制器创建接口组标识和接口组包括的转发设备接口的接口标识;
所述控制器向所述转发设备发送创建的接口组标识和接口组包括的转发设备接口的接口标识。
5.根据权利要求1所述的方法,其特征在于,所述控制器根据所述需要应用FlowSpec规则的至少一个转发设备接口生成应用接口规则,包括:
所述控制器生成应用接口规则,所述应用接口规则包括:业务筛选条件,所述业务筛选条件用于从所述转发设备接口信息中筛选出所述需要应用FlowSpec规则的至少一个转发设备接口。
6.根据权利要求1至5中任一项所述的方法,其特征在于,所述控制器向所述转发设备发送FlowSpec消息,包括:
所述控制器通过BGP路由属性信息向所述转发设备发送FlowSpec消息,所述BGP路由属性信息承载有所述应用接口规则。
7.根据权利要求1至5中任一项所述的方法,其特征在于,所述控制器接收转发设备上报的转发设备接口信息,包括:
所述控制器通过边界网关协议链路状态BGP-LS协议接收转发设备上报的转发设备接口信息。
8.一种流规范FlowSpec消息的处理方法,其特征在于,包括:
转发设备向控制器上报该转发设备自身的转发设备接口信息;
所述转发设备接收所述控制器发送的FlowSpec消息,并从所述FlowSpec消息中获取到应用接口规则和FlowSpec规则;
所述转发设备根据所述应用接口规则确定所述转发设备的转发设备接口中是否存在需要应用FlowSpec规则的至少一个转发设备接口;
当所述转发设备的转发设备接口中存在所述需要应用FlowSpec规则的至少一个转发设备接口时,所述转发设备将所述FlowSpec规则应用到所述需要应用FlowSpec规则的至少一个转发设备接口上。
9.根据权利要求8所述的方法,其特征在于,当所述应用接口规则为接口标识集合时,所述转发设备根据所述应用接口规则确定所述转发设备的转发设备接口中是否存在需要应用FlowSpec规则的至少一个转发设备接口,包括:
所述转发设备从所述接口标识集合中获取到接口标识;
所述转发设备从所述转发设备的转发设备接口对应的接口标识中查找是否存在所述接口标识集合中的接口标识。
10.根据权利要求8所述的方法,其特征在于,当所述应用接口规则为接口组标识时,所述转发设备根据所述应用接口规则确定所述转发设备的转发设备接口中是否存在需要应用FlowSpec规则的至少一个转发设备接口,包括:
所述转发设备根据所述接口组标识获取到接口组;
所述转发设备从所述转发设备的转发设备接口中查找是否存在所述接口组中包括的转发设备接口。
11.根据权利要求10所述的方法,其特征在于,所述转发设备根据所述应用接口规则确定所述转发设备的转发设备接口中是否存在需要应用FlowSpec规则的至少一个转发设备接口之前,所述方法还包括:
所述转发设备接收所述控制器发放的接口组标识和接口组包括的转发设备接口的接口标识;
所述转发设备根据所述控制器发放的接口组标识和接口组包括的转发设备接口的接口标识筛选所述转发设备的转发设备接口,维护所述转发设备的转发设备接口与接口组之间的关联关系。
12.根据权利要求8所述的方法,其特征在于,当所述应用接口规则为业务筛选条件时,所述转发设备根据所述应用接口规则确定所述转发设备的转发设备接口中是否存在需要应用FlowSpec规则的至少一个转发设备接口,包括:
所述转发设备从所述转发设备的转发设备接口中查找是否存在满足所述业务筛选条件的转发设备接口,若所述转发设备的转发设备接口中存在满足所述业务筛选条件的转发设备接口,则确定所述转发设备中存在所述需要应用FlowSpec规则的至少一个转发设备接口,若所述转发设备的转发设备接口中不存在满足所述业务筛选条件的转发设备接口,则确定所述转发设备的转发设备接口中不存在所述需要应用FlowSpec规则的至少一个转发设备接口。
13.根据权利要求8至12中任一项所述的方法,其特征在于,所述转发设备接口信息,包括如下信息中的至少一种:接口标识符Interface Identifier 信息、接口描述InterfaceDescription信息、接口服务Interface Service信息和接口组Interface Group信息。
14.根据权利要求8至12中任一项所述的方法,其特征在于,所述转发设备向控制器上报该转发设备自身的转发设备接口信息,包括:
所述转发设备通过边界网关协议链路状态BGP-LS向控制器上报该转发设备自身的转发设备接口信息。
15.一种控制器,其特征在于,包括:
接收模块,用于接收转发设备上报的转发设备接口信息;
接口配置模块,用于从接收到的所述转发设备接口信息中选择出需要应用FlowSpec规则的至少一个转发设备接口;
应用接口规则生成模块,用于根据所述需要应用FlowSpec规则的至少一个转发设备接口生成应用接口规则,所述应用接口规则用于指示所述转发设备确定出能够应用所述FlowSpec规则的转发设备接口;
发送模块,用于向所述转发设备发送FlowSpec消息,所述FlowSpec消息包括所述应用接口规则和所述FlowSpec规则。
16.根据权利要求15所述的控制器,其特征在于,所述转发设备接口信息,包括:转发设备接口的接口标识;
所述应用接口规则生成模块,具体用于获取所述需要应用FlowSpec规则的至少一个转发设备接口对应的至少一个接口标识;生成应用接口规则,所述应用接口规则包括:接口标识集合,所述接口标识集合包括:所述需要应用FlowSpec规则的至少一个转发设备接口对应的至少一个接口标识。
17.根据权利要求15所述的控制器,其特征在于,所述应用接口规则生成模块,具体用于确定所述需要应用FlowSpec规则的至少一个转发设备接口所属的接口组;获取所述需要应用FlowSpec规则的至少一个转发设备接口所属的接口组对应的接口组标识;生成应用接口规则,所述应用接口规则包括:所述接口组标识。
18.根据权利要求17所述的控制器,其特征在于,所述控制器,还包括:接口组处理模块,用于创建接口组标识和接口组包括的转发设备接口的接口标识;向 所述转发设备发送创建的接口组标识和接口组包括的转发设备接口的接口标识。
19.根据权利要求15所述的控制器,其特征在于,所述应用接口规则生成模块,具体用于生成应用接口规则,所述应用接口规则包括:业务筛选条件,所述业务筛选条件用于从所述转发设备接口信息中筛选出所述需要应用FlowSpec规则的至少一个转发设备接口。
20.根据权利要求15至19中任一项所述的控制器,其特征在于,所述发送模块,具体用于通过BGP路由属性信息向所述转发设备发送FlowSpec消息,所述BGP路由属性信息承载有所述应用接口规则。
21.根据权利要求15至19中任一项所述的控制器,其特征在于,所述接收模块,具体用于通过边界网关协议链路状态BGP-LS协议接收转发设备上报的转发设备接口信息。
22.一种转发设备,其特征在于,包括:
发送模块,用于向控制器上报该转发设备自身的转发设备接口信息;
接收模块,用于接收所述控制器发送的FlowSpec消息,并从所述FlowSpec消息中获取到应用接口规则和FlowSpec规则;
接口识别模块,用于根据所述应用接口规则确定所述转发设备的转发设备接口中是否存在需要应用FlowSpec规则的至少一个转发设备接口;
FlowSpec规则应用模块,用于当所述转发设备的转发设备接口中存在所述需要应用FlowSpec规则的至少一个转发设备接口时,将所述FlowSpec规则应用到所述需要应用FlowSpec规则的至少一个转发设备接口上。
23.根据权利要求22所述的转发设备,其特征在于,当所述应用接口规则为接口标识集合时,所述接口识别模块,具体用于从所述接口标识集合中获取到接口标识;从所述转发设备的转发设备接口对应的接口标识中查找是否存在所述接口标识集合中的接口标识。
24.根据权利要求22所述的转发设备,其特征在于,当所述应用接口规则为接口组标识时,所述接口识别模块,具体用于根据所述接口组标识获取到接口组;从所述转发设备的转发设备接口中查找是否存在所述接口组中包括的转发设备接口。
25.根据权利要求24所述的转发设备,其特征在于,所述转发设备还包括:接口组处理模块,用于所述接口识别模块根据所述应用接口规则确定所述转发设备的转发设备接口中是否存在需要应用FlowSpec规则的至少一个转发设备接口之前,接收所述控制器发放的接口组标识和接口组包括的转发设备接口的接口标识;根据所述控制器发放的接口组标识和接口组包括的转发设备接口的接口标识筛选所述转发设备的转发设备接口,维护所述转发设备的转发设备接口与接口组之间的关联关系。
26.根据权利要求22所述的转发设备,其特征在于,当所述应用接口规则为业务筛选条件时,所述接口识别模块,具体用于从所述转发设备的转发设备接口中查找是否存在满足所述业务筛选条件的转发设备接口,若所述转发设备的转发设备接口中存在满足所述业务筛选条件的转发设备接口,则确定所述转发设备中存在所述需要应用FlowSpec规则的至少一个转发设备接口,若所述转发设备的转发设备接口中不存在满足所述业务筛选条件的转发设备接口,则确定所述转发设备的转发设备接口中不存在所述需要应用FlowSpec规则的至少一个转发设备接口。
27.根据权利要求22至26中任一项所述的转发设备,其特征在于,所述转发设备接口信息,包括如下信息中的至少一种:接口标识符Interface Identifier信息、接口描述Interface Description信息、接口服务Interface Service信息和接口组InterfaceGroup信息。
28.根据权利要求22至26中任一项的所述的转发设备,其特征在于,所述发送模块,具体用于通过边界网关协议链路状态BGP-LS向控制器上报该转发设备自身的转发设备接口信息。
29.一种流规范FlowSpec消息的处理系统,其特征在于,包括:如权利要求15至21中任一项所述的控制器和如权利要求22至28中任一项所述的转发设备。
CN201610533501.5A 2016-07-07 2016-07-07 FlowSpec消息的处理方法和装置以及系统 Active CN107592270B (zh)

Priority Applications (7)

Application Number Priority Date Filing Date Title
CN201610533501.5A CN107592270B (zh) 2016-07-07 2016-07-07 FlowSpec消息的处理方法和装置以及系统
CN202111210278.8A CN114095452A (zh) 2016-07-07 2016-07-07 FlowSpec消息的处理方法和装置以及系统
PCT/CN2017/084379 WO2018006654A1 (zh) 2016-07-07 2017-05-15 FlowSpec消息的处理方法和装置以及系统
EP17823466.2A EP3462688B1 (en) 2016-07-07 2017-05-15 Method, apparatus and system for processing flowspec message
US16/240,242 US10791059B2 (en) 2016-07-07 2019-01-04 FlowSpec message processing method and system, and apparatus
US17/023,790 US11290386B2 (en) 2016-07-07 2020-09-17 FlowSpec message processing method and system, and apparatus
US17/683,778 US12010030B2 (en) 2016-07-07 2022-03-01 FlowSpec message processing method and system, and apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610533501.5A CN107592270B (zh) 2016-07-07 2016-07-07 FlowSpec消息的处理方法和装置以及系统

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN202111210278.8A Division CN114095452A (zh) 2016-07-07 2016-07-07 FlowSpec消息的处理方法和装置以及系统

Publications (2)

Publication Number Publication Date
CN107592270A CN107592270A (zh) 2018-01-16
CN107592270B true CN107592270B (zh) 2021-10-15

Family

ID=60901773

Family Applications (2)

Application Number Title Priority Date Filing Date
CN202111210278.8A Pending CN114095452A (zh) 2016-07-07 2016-07-07 FlowSpec消息的处理方法和装置以及系统
CN201610533501.5A Active CN107592270B (zh) 2016-07-07 2016-07-07 FlowSpec消息的处理方法和装置以及系统

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN202111210278.8A Pending CN114095452A (zh) 2016-07-07 2016-07-07 FlowSpec消息的处理方法和装置以及系统

Country Status (4)

Country Link
US (3) US10791059B2 (zh)
EP (1) EP3462688B1 (zh)
CN (2) CN114095452A (zh)
WO (1) WO2018006654A1 (zh)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107665427A (zh) 2017-08-22 2018-02-06 阿里巴巴集团控股有限公司 一种离线支付、业务处理、支付处理的方法及装置
EP3735760B1 (en) * 2018-01-05 2023-10-11 Telefonaktiebolaget LM Ericsson (publ) Data center failure management in an sdn deployment using border gateway node control
EP3738273A4 (en) 2018-01-12 2021-08-18 Telefonaktiebolaget LM Ericsson (publ) DATA CENTER FAILURE MANAGEMENT IN AN SDN DEPLOYMENT USING SWITCH NODE CONTROL
JP6805194B2 (ja) * 2018-02-15 2020-12-23 日本電信電話株式会社 経路情報転送装置、経路情報転送方法および経路情報転送プログラム
US10454715B1 (en) 2018-05-03 2019-10-22 At&T Intellectual Property I, L.P. Virtual private wire service interworking
CN108924049B (zh) * 2018-06-27 2020-12-25 新华三技术有限公司合肥分公司 流规格路由调度方法及装置
US10944783B2 (en) 2018-07-12 2021-03-09 At&T Intellectual Property I, L.P. Dynamic denial of service mitigation system
CN112751814B (zh) 2019-10-31 2022-04-12 华为技术有限公司 一种信息上报方法、数据处理方法及装置
US11930037B2 (en) * 2020-10-08 2024-03-12 Charter Communications Operating, Llc Validation and implementation of flow specification (Flowspec) rules
CN114760165A (zh) * 2020-12-25 2022-07-15 华为技术有限公司 报文传输方法、设备及系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104012052A (zh) * 2011-11-10 2014-08-27 博科通讯系统有限公司 用于软件定义网络中的流管理的系统和方法
WO2015014187A1 (zh) * 2013-07-31 2015-02-05 华为技术有限公司 一种支持多租户的数据转发方法和装置
CN105072085A (zh) * 2015-07-03 2015-11-18 北京航空航天大学 一种软件定义网络下的流规则合法性认证方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102714628B (zh) * 2010-01-05 2015-11-25 日本电气株式会社 通信系统、控制装置、处理规则设置方法和分组传输方法
CN102726011B (zh) * 2010-01-27 2016-03-16 日本电信电话株式会社 虚拟网控制方法以及虚拟网控制装置
IN2014DN07935A (zh) * 2012-03-23 2015-05-01 Nec Corp
US20160182300A1 (en) * 2014-12-17 2016-06-23 Cisco Technology, Inc., A Corporation Of California Selective Configuring of Throttling Engines for Flows of Packet Traffic

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104012052A (zh) * 2011-11-10 2014-08-27 博科通讯系统有限公司 用于软件定义网络中的流管理的系统和方法
WO2015014187A1 (zh) * 2013-07-31 2015-02-05 华为技术有限公司 一种支持多租户的数据转发方法和装置
CN104348724A (zh) * 2013-07-31 2015-02-11 华为技术有限公司 一种支持多租户的数据转发方法和装置
CN105072085A (zh) * 2015-07-03 2015-11-18 北京航空航天大学 一种软件定义网络下的流规则合法性认证方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Applying BGP flowspec rules on a specific interface set;Litkowski 等;《draft-ietf-idr-flowspec-interfaceset-00》;20160519;全文 *

Also Published As

Publication number Publication date
EP3462688B1 (en) 2022-10-26
CN107592270A (zh) 2018-01-16
US20210067454A1 (en) 2021-03-04
CN114095452A (zh) 2022-02-25
US12010030B2 (en) 2024-06-11
US11290386B2 (en) 2022-03-29
US20190140960A1 (en) 2019-05-09
EP3462688A1 (en) 2019-04-03
US10791059B2 (en) 2020-09-29
US20220263764A1 (en) 2022-08-18
EP3462688A4 (en) 2019-05-15
WO2018006654A1 (zh) 2018-01-11

Similar Documents

Publication Publication Date Title
CN107592270B (zh) FlowSpec消息的处理方法和装置以及系统
US11870755B2 (en) Dynamic intent-based firewall
US8194570B2 (en) Configuration tool for MPLS virtual private network topologies
US8955100B2 (en) Routing device having integrated MPLS-aware firewall
US8316435B1 (en) Routing device having integrated MPLS-aware firewall with virtual security system support
CN107222449B (zh) 基于流规则协议的通信方法、设备和系统
CN113169930A (zh) 跨多个管理域的端到端身份知晓路由
US7720009B2 (en) Virtual private network (VPN) topology identifier
CN111355661B (zh) 一种vpn的处理方法和pe设备以及系统
CN111130980B (zh) 用于实现组合虚拟专用网vpn的方法与装置
CN107959611B (zh) 一种转发报文的方法,装置及系统
US9838337B1 (en) Automatic virtual local area network (VLAN) provisioning in data center switches
US20140280434A1 (en) Method for networking cpaas components for application on-boarding
WO2023158959A1 (en) Underlay path discovery for a wide area network
WO2014173116A1 (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