CN111884934B - 业务功能链sfc中用于转发报文的方法、装置和系统 - Google Patents

业务功能链sfc中用于转发报文的方法、装置和系统 Download PDF

Info

Publication number
CN111884934B
CN111884934B CN202010590678.5A CN202010590678A CN111884934B CN 111884934 B CN111884934 B CN 111884934B CN 202010590678 A CN202010590678 A CN 202010590678A CN 111884934 B CN111884934 B CN 111884934B
Authority
CN
China
Prior art keywords
service function
information
node
forwarding
routing table
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
CN202010590678.5A
Other languages
English (en)
Other versions
CN111884934A (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 CN202010590678.5A priority Critical patent/CN111884934B/zh
Publication of CN111884934A publication Critical patent/CN111884934A/zh
Application granted granted Critical
Publication of CN111884934B publication Critical patent/CN111884934B/zh
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
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/54Organization of routing tables
    • 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/302Route determination based on requested QoS
    • H04L45/306Route determination based on the nature of the carried application
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/52Multiprotocol routers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • H04L45/745Address table lookup; Address filtering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • 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/17Interaction among intermediate nodes, e.g. hop by hop

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

本发明公开了一种SFC中用于转发报文的方法、装置和系统,能够将路由交换设备与控制器之间的交互标准化,使得控制器与路由交换设备之间顺利对接。该方法包括:控制节点确定SFC中的业务功能路径SFP中的业务功能转发节点的路由表项信息,该路由表项信息记录有路由前缀信息和下一跳信息的映射关系,该路由前缀信息包括业务路径标识SPI和业务索引SI,该SPI用于标识该SFP,该SI用于标识该业务功能转发节点在该SFP中的位置,该下一跳信息用于指示在该SFP上该业务功能转发节点的下一跳节点;该控制节点向该业务功能转发节点发送该路由表项信息,该路由表项信息用于该业务功能转发节点生成转发表,该转发表用于指示该业务功能转发节点转发报文。

Description

业务功能链SFC中用于转发报文的方法、装置和系统
本申请是名称为“业务功能链SFC中用于转发报文的方法、装置和系统”,专利申请号为201680003716.4,申请日为2016年7月1日的分案申请。
技术领域
本发明实施例涉及通信领域,并且更具体地,涉及一种业务功能链SFC中用于转发报文的方法、装置和系统。
背景技术
业务功能链(Service Function Chaining,简称为“SFC”)是一种部署增值业务的机制。在网络通信中,将具有业务处理功能(如防火墙(firewall)、网络地址转换(NetworkAddress Translation,简称“NAT”)、深度报文检测(Deep Packet Inspection,简称“DPI”)等)的一组设备有序地组合起来,让流量通过这些业务功能就构成了SFC。SFC的基本架构包括控制节点、分类节点、业务功能转发节点和业务功能节点等。
SFC业务部署在软件定义网络(Software Defined Network,简称“SDN”)中。SDN包括控制器(即,控制节点的一例)与SDN路由交换设备(即,业务功能转发节点的一例)。控制器与SDN路由交换设备是通过南向接口协议,例如,开放流(OpenFlow),进行点对点地转发表项(例如,流表)下发的。这种业务功能转发节点只支持OpenFlow规范定义的操作的纯SDN路由交换设备。
然而,在现有的SDN中,主流的SDN路由交换设备还是SDN混合路由交换设备,例如,OpenFlow混合(OpenFlow-hybrid)交换机。这种SDN混合路由交换设备通常是基于传统的路由交换设备进行硬件改进实现的。各厂家对传统的路由交换设备的硬件改进都是私有扩展,各厂家的私有扩展并不统一,从而导致传统的路由交换设备与控制器之间的交互无法实现标准化,造成控制器与路由交换设备之间实现SFC业务对接困难。
发明内容
本发明提供一种业务功能链SFC中用于转发报文的方法、装置和系统,将路由交换设备与控制器之间的交互标准化,使得控制器与路由交换设备之间的SFC业务顺利对接。
第一方面,本发明提供一种SFC中用于转发报文的方法,所述方法包括:控制节点确定SFC中的业务功能路径SFP中的业务功能转发节点的路由表项信息,所述路由表项信息记录有路由前缀信息和下一跳信息的映射关系,所述路由前缀信息包括业务路径标识SPI和业务索引SI,所述SPI用于标识所述SFP,所述SI用于标识所述业务功能转发节点在所述SFP中的位置,所述下一跳信息用于指示所述业务功能转发节点的下一跳节点;所述控制节点向所述业务功能转发节点发送所述路由表项信息,所述路由表项信息用于所述业务功能转发节点生成转发表,所述转发表用于指示所述业务功能转发节点转发报文。
因此,本发明实施例的SFC中用于转发报文的方法,控制节点将路由表项信息直接下发到业务功能转发节点,由业务功能转发节点自己生成转发表,通过使用成熟的协议将控制节点与业务功能转发节点间的交互标准化,使得控制节点与业务功能转发节点之间SFC业务的顺利对接。
更进一步地,通过在传统的路由交换设备上通过SPI和SI作为路由来引导报文,即利用现有SDN设备上已经存在的路由策略,对以“SPI和SI”形式存在的路由进行灵活的处理。相比于现有的传统路由交换设备而言,更加方便、灵活。
结合第一方面,在第一方面的第一种可能的实现方式中,所述控制节点向所述业务功能转发节点发送所述路由表项信息,包括:所述控制节点生成边界网关协议BGP更新报文,所述BGP更新报文承载所述路由表项信息;所述控制节点向所述业务功能转发节点发送所述BGP更新报文。
结合第一方面以及上述可能的实现方式,在第一方面的第二种可能的实现方式中,所述控制节点生成BGP更新报文,所述BGP更新报文承载所述路由表项信息,包括:所述控制节点生成所述BGP更新报文,所述BGP更新报文包括多协议扩展可达网络层可达性信息MP_REACH_NLRI属性字段,所述MP_REACH_NLRI属性字段包括子地址族标识SAFI字段、NLRI字段和下一跳信息字段,所述SAFI字段指示所述MP_REACH_NLRI属性字段是基于SFC同步地址族所支持的封装格式封装的,所述NLRI字段包括类型长度值TLV字段,所述TLV字段的类型T字段表示所述TLV字段的类型为SFC路由表项同步类型,所述TLV字段的值V字段携带所述SPI和所述SI,所述下一跳信息字段承载所述下一跳信息。
通过在现有BGP协议的基础上作了扩展,即,通过BGP Flow Spec报文中的NLRI字段承载匹配项信息,通过BGP Flow Spec报文中的重定向扩展团体属性字段来承载执行的动作域信息。
结合第一方面以及上述可能的实现方式,在第一方面的第三种可能的实现方式中,所述路由表项信息还包括路由属性信息,所述路由属性信息包括以下至少一种流量分配参数的类型:权重、开销和带宽,其中,所述BGP更新报文还包括BGP SFC属性Attribute字段,所述BGP SFC Attribute字段包括至少一个子TLV字段,每种流量分配参数的类型与所述至少一个子TLV字段中的一个子TLV字段对应,每个子TLV字段包括T字段、L字段和V字段,所述T字段表示所述流量分配参数的类型中的任意一种,所述V字段指示基于所对应的流量分配参数的类型对所述报文所承载的流量进行分配的参数。
通过在路由表项信息中携带路由属性信息,便于业务功能转发节点根据路由属性信息中所包含的流量分配参数分配流量,使得流量在SFC中分配得更加合理和灵活。
第二方面,本发明提供一种SFC中用于转发报文的方法,所述方法包括:业务功能转发节点接收控制节点发送的路由表项信息,所述路由表项信息记录有路由前缀信息和下一跳信息的映射关系,所述路由前缀信息包括业务路径标识SPI和业务索引SI,所述SPI用于标识所述SFP,所述SI用于标识所述业务功能转发节点在所述SFP中的位置,所述下一跳信息用于指示所述业务功能转发节点的下一跳节点;所述业务功能转发节点将所述路由表项信息保存在所述业务功能转发节点的路由表中,以便于所述业务功能转发节点根据所述路由表生成转发表,并根据所述转发表转发报文。
因此,本发明实施例的SFC中用于转发报文的方法,控制节点将路由表项信息直接下发到业务功能转发节点,由业务功能转发节点自己生成转发表,通过使用成熟的协议将控制节点与业务功能转发节点间的交互标准化,使得控制节点与业务功能转发节点之间SFC业务的顺利对接。
更进一步地,通过在传统的路由交换设备上通过SPI和SI作为路由来引导报文,即利用现有SDN设备上已经存在的路由策略,对以“SPI和SI”形式存在的路由进行灵活的处理。相比于现有的传统路由交换设备而言,更加方便、灵活。
结合第二方面,在第二方面的第一种可能的实现方式中,所述业务功能转发节点接收控制节点发送的路由表项信息,包括:所述业务功能转发节点接收所述控制节点发送的边界网关协议BGP更新报文,所述BGP更新报文承载所述路由表项信息。
更进一步地,所述BGP更新报文包括多协议扩展可达网络层可达性信息MP_REACH_NLRI属性字段,所述MP_REACH_NLRI属性字段包括子地址族标识SAFI字段、NLRI字段和下一跳信息字段,所述SAFI字段指示所述MP_REACH_NLRI属性字段是基于SFC同步地址族所支持的封装格式封装的,所述NLRI字段包括类型长度值TLV字段,所述TLV字段的类型T字段表示所述TLV字段的类型为SFC路由表项同步类型,所述TLV字段的值V字段携带所述SPI和所述SI,所述下一跳信息字段承载所述下一跳信息。
结合第二方面以及上述可能的实现方式,在第二方面的第二种可能的实现方式中,所述路由表项信息还包括路由属性信息,所述路由属性信息包括以下至少一种流量分配参数的类型:权重、开销和带宽,其中,所述BGP更新报文还包括BGP SFC属性Attribute字段,所述BGP SFC Attribute字段包括至少一个子TLV字段,每种流量分配参数的类型与所述至少一个子TLV字段中的一个子TLV字段对应,每个子TLV字段包括T字段、L字段和V字段,所述T字段表示所述流量分配参数的类型中的任意一种,所述V字段指示基于所对应的流量分配参数的类型对所述报文所承载的流量进行分配的参数。
通过在路由表项信息中携带路由属性信息,便于业务功能转发节点根据路由属性信息中所包含的流量分配参数分配流量,使得流量在SFC中分配得更加合理和灵活。
结合第二方面以及上述可能的实现方式,在第二方面的第三种可能的实现方式中,所述业务功能转发节点将所述路由表项信息保存在所述业务功能转发节点的路由表中,包括:所述业务功能转发节点根据所述SPI和所述SI,在所述业务功能转发节点的路由表中查找具有相同SPI和SI的目标路由表项信息;所述业务功能转发节点在查找到所述目标路由表项信息时,根据所述路由表项信息,更新所述目标路由表项信息;或者,所述业务功能转发节点在未查找到所述目标路由表项信息时,保存所述路由表项信息。
通过与控制节点同步路由表,使得业务功能转发节点中保存的路由表能够根据网络的变化实时更新,便于业务功能转发节点根据网络状况,确定最优路径,生成转发表,并基于转发表转发报文。
第三方面,本发明提供一种SFC中用于转发报文的方法,所述方法包括:控制节点确定SFC中的业务功能路径SFP中的业务功能转发节点的转发表项信息,所述转发表项信息记录有转发前缀信息和下一跳信息的映射关系,所述转发前缀信息包括业务路径标识SPI和业务索引SI,所述SPI用于标识所述SFP,所述SI用于标识所述业务功能转发节点在所述SFP中的位置,所述下一跳信息用于指示所述业务功能转发节点的下一跳节点;所述控制节点生成边界网关协议BGP报文,所述BGP报文承载所述转发表项信息;所述控制节点向所述业务功能转发节点发送所述BGP报文,所述BGP报文承载的所述转发表项信息用于指示所述业务功能转发节点转发报文。
因此,根据本发明实施例的SFC中用于转发报文的方法,控制节点通过BGP报文将转发表项信息直接下发到业务功能转发节点,业务功能转发节点可以直接根据转发表项信息转发报文。通过使用成熟的协议将控制节点与业务功能转发节点间的交互标准化,使控制节点与业务功能转发节点间SFC业务的顺利对接。
更进一步地,将控制面与转发面分离开来,使得各个转发节点的控制平面集中在控制器上,便于实施统一的业务部署策略,实施统一的管理和维护策略。
结合第三方面,在第三方面的第一种可能的实现方式中,所述控制节点生成边界网关协议BGP报文,所述BGP报文承载所述转发表项信息,包括:所述控制节点生成所述BGP报文,所述BGP报文包括基于SFC同步地址族所支持的封装格式封装的多协议扩展可达网络层可达性信息MP_REACH_NLRI属性字段,所述MP_REACH_NLRI属性字段包括NLRI字段和下一跳信息字段,所述NLRI字段包括类型长度值TLV字段,所述TLV字段的类型T字段表示所述TLV字段的类型为转发表项同步类型,所述TLV字段的值V字段携带所述SPI和所述SI,所述下一跳信息字段承载所述下一跳信息。
通过在现有BGP协议的基础上作了扩展,即,通过BGP Flow Spec报文中的NLRI字段承载匹配项信息,通过BGP Flow Spec报文中的重定向扩展团体属性字段来承载执行的动作域信息。
结合第三方面及其上述可能的实现方式,在第三方面的第二种可能的实现方式,所述转发表项信息包括转发属性信息,所述转发属性信息包括以下至少一种流量分配参数的类型:权重、开销和带宽,其中,所述BGP报文包括BGP SFC属性Attribute字段,所述BGPSFC Attribute字段包括至少一个子TLV字段,每种流量分配参数的类型与所述至少一个子TLV字段中的一个子TLV字段对应,每个子TLV字段包括T字段、长度L字段和V字段,所述T字段表示所述流量分配参数的类型中的任意一种,所述V字段指示基于所对应的流量分配参数的类型对所述报文所承载的流量进行分配的参数。
通过在转发表项信息中携带路由属性信息,便于业务功能转发节点根据路由属性信息中所包含的流量分配参数分配流量,使得流量在SFC中分配得更加合理和灵活。
可选地,所述BGP报文为BGP更新报文。
第四方面,本发明提供一种SFC中用于转发报文的方法,所述方法包括:业务功能转发节点接收控制节点发送的边界网关协议BGP报文,所述BGP报文承载转发表项信息,所述转发表项信息记录有转发前缀信息和下一跳信息的映射关系,所述转发前缀信息包括业务路径标识SPI和业务索引SI,所述SPI用于标识所述SFP,所述SI用于标识所述业务功能转发节点在所述SFP中的位置,所述下一跳信息用于指示所述业务功能转发节点的下一跳节点;所述业务功能转发节点保存所述转发表项信息,以便于根据所述转发表项信息转发报文。
因此,根据本发明实施例的SFC中用于转发报文的方法,控制节点通过BGP报文将转发表项信息直接下发到业务功能转发节点,业务功能转发节点可以直接根据转发表项信息转发报文。通过使用成熟的协议将控制节点与业务功能转发节点间的交互标准化,使控制节点与业务功能转发节点间SFC业务的顺利对接。
更进一步地,将控制面与转发面分离开来,使得各个转发节点的控制平面集中在控制器上,便于实施统一的业务部署策略,实施统一的管理和维护策略。
结合第四方面,在第四方面的第一种可能的实现方式中,所述BGP报文包括多协议扩展可达网络层可达性信息MP_REACH_NLRI属性字段,所述MP_REACH_NLRI属性字段包括子地址族标识SAFI字段、NLRI字段和下一跳信息字段,所述SAFI字段指示所述MP_REACH_NLRI属性字段是基于SFC同步地址族所支持的封装格式封装的,所述NLRI字段包括类型长度值TLV字段,所述TLV字段的类型T字段表示所述TLV字段的类型为SFC转发表项同步类型,所述TLV字段的值V字段携带所述SPI和所述SI,所述下一跳信息字段承载所述下一跳信息。
通过在现有BGP协议的基础上作了扩展,即,通过BGP Flow Spec报文中的NLRI字段承载匹配项信息,通过BGP Flow Spec报文中的重定向扩展团体属性字段来承载执行的动作域信息。
结合第四方面及其上述可能的实现方式,在第四方面的第二种可能的实现方式,所述转发表项信息包括转发属性信息,所述转发属性信息包括以下至少一种流量分配参数的类型:权重、开销和带宽,其中,所述BGP报文包括BGP SFC属性Attribute字段,所述BGPSFC Attribute字段包括至少一个子TLV字段,每种流量分配参数的类型与所述至少一个子TLV字段中的一个子TLV字段对应,每个子TLV字段包括T字段、长度L字段和V字段,所述T字段表示所述流量分配参数的类型中的任意一种,所述V字段指示基于所对应的流量分配参数的类型对所述报文所承载的流量进行分配的参数。
通过在转发表项信息中携带转发属性信息,便于业务功能转发节点根据转发属性信息中所包含的流量分配参数分配流量,使得流量在SFC中分配得更加合理和灵活。
结合第四方面及其上述可能的实现方式,在第四方面的第三种可能的实现方式中,所述业务功能转发节点保存所述转发表项信息,包括:所述业务功能转发节点根据所述SPI和所述SI,在所述业务功能转发节点的转发表中查找具有相同SPI和SI的目标转发表项信息;所述业务功能转发节点在查找到所述目标转发表项信息时,根据所述转发表项信息,更新所述目标转发表项信息;或者,所述业务功能转发节点在未查找到所述目标转发表项信息时,保存所述转发表项信息。
通过与控制节点同步转发表,使得业务功能转发节点中保存的转发表能够根据网络的变化实时更新,以便于在后续接收到相同流量特征信息的报文时,直接根据该转发表项信息进行报文转发。
可选地,所述BGP报文为BGP更新报文。
第五方面,本发明提供一种控制节点,用于执行第一方面或第一方面的任意可能的实现方式中的方法。具体地,该控制节点包括用于执行第一方面或第一方面的任意可能的实现方式中的方法的模块。
第六方面,本发明提供一种业务功能转发节点,用于执行第二方面或第二方面的任意可能的实现方式中的方法。具体地,该业务功能转发节点包括用于执行第二方面或第二方面的任意可能的实现方式中的方法的模块。
第七方面,本发明提供一种SFC中用于转发报文的系统,包括第五方面提供的控制节点和第六方面提供的业务功能转发节点。
第八方面,本发明提供一种控制节点,用于执行第三方面或第三方面的任意可能的实现方式中的方法。具体地,该控制节点包括用于执行第三方面或第三方面的任意可能的实现方式中的方法的模块。
第九方面,本发明提供一种业务功能转发节点,用于执行第四方面或第四方面的任意可能的实现方式中的方法。具体地,该业务功能转发节点包括用于执行第四方面或第四方面的任意可能的实现方式中的方法的模块。
第十方面,本发明提供一种SFC中用于转发报文的系统,包括第八方面提供的控制节点和第九方面提供的业务功能转发节点。
第十一方面,本发明提供一种控制节点,所述控制节点包括:接收器、发送器、存储器、处理器和总线系统。其中,接收器、发送器、存储器和处理器通过总线系统相连,存储器用于存储指令,该处理器用于执行该存储器存储的指令,以控制接收器接收信号,发送器发送信号,并且当该处理器执行该存储器存储的指令时,该执行使得该处理器执行第一方面或第一方面的任意可能的实现方式中的方法。
第十二方面,本发明提供一种业务功能转发节点,所述业务功能转发节点包括:接收器、发送器、存储器、处理器和总线系统。其中,接收器、发送器、存储器和处理器通过总线系统相连,存储器用于存储指令,该处理器用于执行该存储器存储的指令,以控制接收器接收信号,发送器发送信号,并且当该处理器执行该存储器存储的指令时,该执行使得该处理器执行第二方面或第二方面的任意可能的实现方式中的方法。
第十三方面,本发明提供一种控制节点,所述控制节点包括:接收器、发送器、存储器、处理器和总线系统。其中,接收器、发送器、存储器和处理器通过总线系统相连,存储器用于存储指令,该处理器用于执行该存储器存储的指令,以控制接收器接收信号,发送器发送信号,并且当该处理器执行该存储器存储的指令时,该执行使得该处理器执行第三方面或第三方面的任意可能的实现方式中的方法。
第十四方面,本发明提供一种业务功能转发节点,所述业务功能转发节点包括:接收器、发送器、存储器、处理器和总线系统。其中,接收器、发送器、存储器和处理器通过总线系统相连,存储器用于存储指令,该处理器用于执行该存储器存储的指令,以控制接收器接收信号,发送器发送信号,并且当该处理器执行该存储器存储的指令时,该执行使得该处理器执行第四方面或第四方面的任意可能的实现方式中的方法。
本发明提供了一种SFC中用于转发报文的方法、装置和系统,使路由交换设备与控制器之间的交互标准化,使得控制器与路由交换设备之间SFC业务的顺利对接。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例的应用场景的示意图。
图2是根据本发明一实施例的SFC中用于转发报文的方法的示意性流程图。
图3是根据本发明一实施例的基于边界网关协议(Border Gateway Protocol,简称“BGP”)SFC同步(Synchronization)地址族所支持的封装格式封装的多协议扩展可达网络层可达性信息(Multi-Protocol Reach Network Reachability Information,简称“MP_REACH_NLRI”)字段的示意图。
图4是根据本发明一实施例的NLRI字段中类型长度值(Type Length Value,简称“TLV”)字段的示意图。
图5是根据本发明一实施例BGP SFC属性(Attribute)字段中的子TLV(Sub-TLV)字段的示意图。
图6是根据本发明另一实施例的SFC中用于转发报文的方法的示意性流程图。
图7是根据本发明一实施例的控制节点的示意性框图。
图8是根据本发明一实施例的业务功能转发节点的示意性框图。
图9是根据本发明一实施例的SFC中用于转发报文的系统的示意性框图。
图10是根据本发明另一实施例的控制节点的示意性框图。
图11是根据本发明另一实施例的业务功能转发节点的示意性框图。
图12是根据本发明另一实施例的SFC中用于转发报文的系统的示意性框图。
图13是根据本发明一实施例的控制节点的另一示意性框图。
图14是根据本发明一实施例的业务功能转发节点的另一示意性框图。
图15是根据本发明另一实施例的控制节点的另一示意性框图。
图16是根据本发明另一实施例的业务功能转发节点的另一示意性框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
为了便于理解和描述本发明实施例提供的SFC中用于转发报文的方法、装置和系统,首先结合图1描述一下本发明实施例的应用场景。
图1是本发明实施例的应用场景的示意图。如图1所示,SFC 100包括业务分类节点,(或者说,业务分类器(Service Classifier,简称为“SC”))110、业务功能转发节点(或者说,业务功能转发器(Service Function Forwarder,简称为“SFF”))、业务功能节点(或者说,业务功能处理器(Service Function,简称为“SF”))、业务尾端(Post Service,简称“PS”)节点140和控制节点(或者说,控制器)160。示例性地,SFF包括SFF1 120a和SFF2120b;SF包括SF1 130a和SF2 130b。
这里,需要说明的是,SFC是基础底层网络(例如底层IP网络)的虚拟Overlay网络,SFC是由基础底层网络中的部分节点(例如具备业务处理和转发功能的节点)组成的,即SFC中包括的各个节点并不是完全物理直连的,例如各个SFF节点之间可能连接有路由器或交换机等网元节点。
换句话说,在SFC中,除了上述列举的业务分类节点、业务功能转发节点、业务功能节点、业务尾端节点之外,还包括该SFC所处的物理网络中的各种路由交换设备。上述列举的业务分类节点、业务功能转发节点、业务功能节点、业务尾端节点以及路由交换设备都可以称为网络节点。为便于区分,将SFC中的业务分类节点、业务功能转发节点、业务功能节点、业务尾端节点统称为SFC节点。物理网络中的各种路由交换设备用于将报文从一个SFC节点转发至另一个SFC节点。应理解,以上列举的SFC节点仅为示例性说明,不应对本发明构成任何限定,SFC节点还可以包括SFC网络中用于实现SFC功能的其他节点,这里为了简洁,不再一一赘述。
还应理解,以上所列举的各SFC节点可以理解为功能模块,分别用于执行各自相应的功能,每个SFC节点可以单独部署,也可以对多个SFC节点合一部署,本发明对于各SFC节点的具体部署方式并未特别限定。例如,SC和SFF1可以合一部署在一台物理设备中,具有SC的流量匹配功能和SFF1的业务转发功能,或者说,具有SC模块和SFF模块。以下,在未作出特别说明的情况下,认为SC与SFF1合一部署,即合一部署的SFF1具有流量匹配和业务转发的功能。
如图1所示,当报文到达SFF1 120a时,SFF1 120a解析该报文所承载的流量的流量特征信息(例如,五元组信息),对报文进行过滤,将与流量的特征信息的过滤条件(或者说,匹配项)匹配的报文引导至相应的业务功能路径(Service Function Path,简称“SFP”)中。SFF1 120a作为该报文进入的首个业务功能转发节点,根据所匹配的SFP封装该报文,封装后的报文包括SFC报文头(SFC Header),该SFC Header中包括用于指示该报文匹配的SFP的业务功能路径标识(Service Function Path Identifier,简称为“SPI”)。然后SFF1 120a将封装后的报文转发至下一个SFC节点。具体地,SFF1 120a基于该SFP将封装后的报文转发至SF1节点130a,SF1节点130a处理完该报文后返回至SFF1 120a。SFF1 120a继续根据该报文匹配的SFP,将经过SF 130a处理后的报文转发至SFF2 120b。以此类推,直至将该报文传输到该报文的SFP的PS节点140。
更具体地,报文在各SFC节点之间时,例如,在业务功能转发节点与业务功能转发节点之间,或者在业务功能转发节点与业务功能节点之间,可能通过多个路由交换设备进行转发,或者说,在业务功能转发节点与业务功能转发节点之间,或者,业务功能转发节点和业务功能节点之间可能有多条通道同时可达,该多条通道是由不同的路由交换设备共同组成的。
再参看图1,SFF1 120a可以通过路由交换设备(例如,路由器(Router)11 150a)到达SF1 130a,SFF1 120a也可以通过Router21 150b和Router22 150c到达SF1 130a,SFF1120a还可以通过Router31 150d到达SF1 130a。也就是说,报文可以经由三条通道从SFF1120a到达SF1 130a。
在本发明实施例中,为方便区分和理解,将业务功能转发节点和业务功能转发节点连接的链路称为SFP,将连接在业务功能转发节点与业务功能转发节点之间,或者连接在业务功能转发节点与业务功能节点之间的路由交换设备构成的链路称为通道。可以理解,通道是SFP的一部分,一个SFP可能由不同的通道构成,或者说,一条SFP可能对应有多个通道。本发明对此并未特别限定。例如,图1中所示的SFF1 120a→Router11 150a→SF1 130a、SFF1 120a→Router21 150b→Router 22 150c→SF1 130a以及SFF1 120a→Router31150d→SF1 130a可以认为是构成同一条SFP的三条不同的通道。应理解,图1所示的SFP与通道间的连接关系仅为示例性说明,不应对本发明构成任何限定。各SFC节点与路由交换设备之间的连接关系并不限于图1所示,本发明对于各SFC节点与路由交换设备间的连接关系并未特别限定。
业务功能转发节点在实际转发过程中,可以通过路由前缀信息所对应的下一跳信息将报文引导到下一个节点。例如,图1中所示的SFF1 120a的下一跳节点可以为Router11150a,也可以为Router21 150b,还可以为Router31 150d。报文从SFF1 120a转发至Router11 150a、Router21 150b、Router31 150d中的任意一个下一跳节点,或者说经过上述三条通道中的任意一条通道,最终到达的目的节点(或者说,下一个SFC节点)均为SF1130a。
需要说明的是,这里所述的路由前缀信息以及后文中所述的转发前缀信息可以是用于SFC中的路由前缀信息,而不同于传统的路由前缀信息(例如,IP路由前缀信息)。
应理解,在SFC中,每个业务功能转发节点可以通过不同的路由转发设备连接至少一个SFC节点,该至少一个SFC节点可以为业务功能节点,也可以为业务功能转发节点。换句话说,每个业务功能转发节点可以同时处于至少一条SFP中。当报文进入到SFP的首个业务功能转发节点时,需要根据该SFP对应的转发表项进行报文转发。
由上述可知,SFC节点是基于SFP来传输报文的,也可以称之为,是基于SFC转发表来传输报文的,而该SFC转发表是根据SFC的网络拓扑信息确定的。因此,在转发报文之前,控制节点(或者说,控制器(Controller))需要根据SFC中的SC、SFF、SF以及PS等节点的相关信息,在SFC中预先配置多条SFP,以匹配不同报文的转发需求。并在每创建一条新的SFP后,下发给该SPF中的各节点(包括SFF和SF节点),以便于各节点与控制节点同步转发表项信息。
应理解,SFC业务部署在SDN中。SDN包括控制器(即,控制节点的一例)与SDN路由交换设备(即,业务功能转发节点的一例)。控制器与SDN路由交换设备是通过南向接口协议,例如,OpenFlow,来实现转发表项的同步的。具体地,控制器在创建新的SFP的路由表项之后,可以基于OpenFlow所支持的流表格式,计算生成流表(即,转发表的一例),通过点对点地方式下发给各业务功能转发节点。各业务功能转发节点根据接收到的流表转发报文。这种业务功能转发节点是只支持OpenFlow规范定义的操作的纯SDN路由交换设备,例如,纯OpenFlow(OpenFlow-only)交换机。
在现有的SDN中,这种纯SDN路由交换设备通常还是通过纯软件转发技术实现的虚拟交换机,例如,开放虚拟交换机(Open vSwitch,简称“OVS”)。硬件转发技术实现的OpenFlow-only交换机受限于芯片技术还需要较长的研发时间。所以主流的SDN路由交换设备还是SDN混合路由交换设备,例如,OpenFlow-hybrid交换机。这种SDN混合路由交换设备通常是基于传统的路由交换设备进行硬件改进实现的。但是,各厂家对传统的路由交换设备的硬件改进都是私有扩展,各厂家的私有扩展并不统一,从而导致传统的路由交换设备与控制器之间的交互无法实现标准化,造成控制器与路由交换设备之间实现SFC业务对接困难。
由此,本发明提供一种基于SFC的报文转发方法,将路由交换设备与控制器之间的交互标准化,解决控制器与交换机同步转发表项时的对接困难问题。
以下,结合图2至图6,详细说明根据本发明实施例的SFC中用于转发报文的方法。
图2是根据本发明一实施例的SFC中用于转发报文的方法200的示意性流程图。应理解,图2示出了SFC中用于转发报文的方法的详细的通信步骤或操作,但这些步骤或操作仅是示例,本发明实施例还可以执行其它操作或者图2中的各种操作的变形。此外,图2中的各个步骤可以按照与图2呈现的不同的顺序来执行,并且有可能并非要执行图2中的全部操作。
如图2所示,该方法200包括:
S210,控制节点确定SFC中的业务功能路径SFP中的业务功能转发节点的路由表项信息;
S220,该控制节点向业务功能转发节点发送该路由表项信息。
具体而言,控制节点可以根据SFC中的网络节点的分布情况,预配置至少一条SFP,用于匹配不同流量的报文。在同一个SFC中,不同的SFP之间可以通过业务路径标识SPI来区分,即,每个SPI对应一个SFP。在同一个SFP中,各业务功能转发节点可以通过业务索引(Service Index,简称“SI”)来指示在该SFP中的位置,其中,报文每经过一个业务功能节点,SI就执行一次SI-1的操作。
这里,需要说明的是,一个业务功能转发节点可以同时属于至少一条SFP,由于各SFP对应的SPI不同,该业务功能转发节点也对应有不同SPI的标识,以区分不同的SFP。也就是说,通过SPI和SI可以联合指示一条确定的SFP,以及业务功能转发节点在该SFP中的位置。
在本发明实施例中,SPI和SI可以合称为路由前缀信息。路由表项信息中记录有路由前缀信息和下一跳信息的映射关系,通过路由前缀信息可以指示一条特定的SFP,并确定报文当前所在的业务功能转发节点在该特定的SFP中的位置,下一跳信息指示该业务功能转发节点的下一跳节点的地址。也就是说,当报文进入某个业务功能转发节点时,可以通过路由前缀信息作路由,找到对应的下一跳节点的地址,从而将报文转发到下一跳节点。应注意,这里所述的下一跳节点,可以为SFC节点,也可以为物理网络中的路由交换设备。这与该业务功能转发节点所直接连接的节点相关。当该业务功能转发节点(例如,图1中所示SFF1)与某个业务功能节点(例如,图1中所示SF2)或者业务功能转发节点(例如,图1中所示SFF2)直接相连,则该业务功能转发节点的下一跳节点为SFC节点(例如,业务功能节点或业务功能转发节点等)。当该业务功能转发节点(例如,图1中所示SFF1)与物理网络中的某个路由交换设备(例如,图1中所示Router)直接连接,则该业务功能转发节点的下一跳节点为路由交换设备。
示例地,该至少一条SFP可以包括第一SFP,该第一SFP可以包括该业务功能转发节点。如图1中所示,假设图1中所示的SC→SFF1→SF1→SFF1→SF2→SFF1→SFF2→PS为第一SFP,并且SC和SFF1合一部署在一台设备上,则可以说,该SC或者SFF1为入口节点(或者说,头节点)。
控制节点在确定了第一SFP之后,可以向各节点发送对应的路由表项信息。具体地,控制节点确定第一SFP中的第一业务功能转发节点的第一路由表项信息,并向该第一业务功能转发节点发送该第一路由表项信息。
需要说明的是,控制节点中保存有SFC中各业务功能转发节点的路由表项信息,每个路由表项信息可以对应一条SFP,在每条SFP所包含的业务功能转发节点中,一条SFP可以对应有一个或多个路由表项信息。各业务功能转发节点的路由表项信息共同组成了路由表。换句话说,路由表项信息可以理解为路由表的子集。
还需要说明的是,在本发明实施例中,控制节点预配置的SFP是与报文所承载的流量的特征信息无关的。SFP可以理解为,在SFC中预配置的一条或多条用于传输报文的路径,当报文进入SFP中的某个业务功能转发节点时,可以通过该业务功能转发节点的路由,进入该路径的下一个节点。
还需要说明的是,控制节点根据预配置的SFP,在本地保存的路由(RoutingInformation Base,简称“RIB”)表中可以预存有各SFP中各业务功能转发节点的路由表项信息。也就是说,控制节点可以获取到该SFC中任意一条SFP的任意一个业务功能转发节点的路由表项信息。区别于后文中所描述的业务功能转发节点保存的路由表,将控制节点中保存的路由表称为SFC路由表,各业务功能转发节点保存的路由表都是基于SFC路由表而确定的。具体地说,控制节点基于SFC路由表向各业务功能转发节点发送路由表项信息,各业务功能转发节点基于接收到的路由表项信息,更新本地保存的路由表。
以下,为便于理解和说明,以转发报文的具体过程为例,结合图1和表1详细说明控制节点向业务功能转发节点下发的路由表项信息。
假设进入SFC的一条报文(为便于说明,记作第一报文)被引导进入第一SFP,即,图1中所示SC→SFF1→SF1→SFF1→SF2→SFF1→SFF2→PS。其中,SC和SFF1可以合一部署为SFF1,PS和SFF2可以合一部署为SFF2,为方便说明,以下省略对SC和PS的描述。
示例地,与第一SFP对应的SPI可以为10,入口节点(即,SFF1)的SI可以为255,即,SFF1的路由前缀信息可以为SPI=10,SI=255。则SFF1在第一SFP中的路由表项信息可以如表1所示。
表1
SPI SI 下一跳信息
10 255 10.1.1.1/31
10 254 10.1.1.3/31
10 253 2.2.2.2/32
结合图1和表1可以看到,在第一SFP中,第一报文进入SFF1之后,根据路由前缀信息SPI=10,SI=255所指向的下一跳信息为10.1.1.1/31,即,指向SF1,第一报文被SFF1转发至SF1。经过SF1的业务功能处理之后,第一报文返回到SFF1中,SI-1,此时,SFF1的路由前缀信息为SPI=10,SI=254,所指向的下一跳信息为10.1.1.3/31,即,指向SF2,第一报文被SFF1转发至SF2。经过SF2的业务功能处理之后,第一报文再次返回到SFF1中,SI-1,此时,SFF1的路由前缀信息为SPI=10,SI=253,所指向的下一跳信息为2.2.2.2/32,即,指向SFF2。由此,第一报文被SFF1转发至下一个业务功能转发节点SFF2。
需要说明的是,表1中列举的SFF1的路由前缀信息以及所对应的下一跳信息所指示的是SFC节点之间的连接关系,是在控制粒度为SFC节点的情况下、作为示例而示出的转发表项信息,不应对本发明构成任何限定。以图1为例,在实际的第一报文转发过程中,SFF1的路由前缀信息SPI=10,SI=255所对应的下一跳信息可以为Router11的地址,也可以为Router21的地址,或者,还可以为Router31的地址。换句话说,SFF1的路由前缀信息SPI=10,SI=255可以对应三个表项,每个表项包括该路由前缀信息与一个路由交换设备(例如,图1中所示Router11、Router21和Router31)的地址的对应关系。第一报文被引导至Router11、Router21或Router31后,可以继续根据Router11、Router21或Router31的路由表项信息,继续转发第一报文,直到转发至SF1。
这里,仅为方便说明,将该SF1的地址记作SFF1的路由前缀信息SPI=10,SI=255所对应的下一跳信息,而不应对本发明构成任何限定。与此相似地,将SF2的地址记作SFF1的路由前缀信息SPI=10,SI=254所对应的下一跳信息,将SFF2的地址记作SFF1的路由前缀信息SPI=10,SI=253所对应的下一跳信息。
在本发明实施例中,SFF1在第一SFP中对应了三个路由前缀信息,这三个路由前缀信息具有相同的SPI(即,对应了同一条SFP),但SI不同,因为第一报文每一次经过SFF1时,该SFF1在第一SFP中的位置是不同的。每一个路由前缀信息所对应的下一跳信息也不同,即,每一个路由前缀信息将报文引导至的下一跳节点也不同。该三个路由前缀信息与三个下一跳信息的映射关系构成了SFF1在第一SFP中的路由表项信息。
控制节点在确定了第一SFP之后,可以将SFF1的路由表项信息发送给SFF1,以便于SFF1基于路由表项信息转发报文。
应理解,表1所示的路由表项信息仅为示例性说明,不应对本发明构成任何限定。控制节点向业务功能转发节点下发的路由表项信息包括表1中所述的SPI、SI和下一跳信息,但表1并不一定为路由表项信息的表现形式,或者说,路由表项信息可以通过表1或者不同于表1的其他形式下发给业务功能转发节点。
还应理解,图1所示的第一SFP仅为示例性说明,不应对本发明构成任何限定。例如,在SFF2上也可以连接有业务功能节点,SFF2之后还可以连接业务功能转发节点,本发明对此并未特别限定。当SFF2上连接有业务功能节点或者业务功能转发节点时,控制节点也可以将SFF2的路由表项信息发送给SFF2,以便于SFF2基于路由表项信息转发报文。
还应理解,控制节点还可以在SFC中确定第二SFP,该第二SFP也可以包括上述业务功能转发节点。因此,控制节点在确定第二SFP后,也可以向该第二SFP中的各节点(包括上述业务功能转发节点)发送对应的路由表项信息。
还应理解,以上结合第一报文的转发过程详细描述了路由表项信息,但是不应对路由表项信息构成任何限定。业务功能转发节点可以基于第一SFP的路由表项信息转发报文,也可以基于第二SFP的路由表项信息转发报文。换句话说,每条SFP的路由表项信息不会因为报文实际所行走的路径而发生改变,相反,入口节点可以根据报文的属性信息选择与之匹配的SFP。
S230,业务功能转发节点将该路由表项信息保存在该业务功能转发节点的路由表中。
具体而言,该业务功能节点在接收到控制节点下发的路由表项信息之后,将该路由表项信息保存在本地保存的路由表中。也就是说,该路由表中保存有至少一条路由表项信息,该至少一条路由表项信息可以包括至少一条SFP的路由表项信息。
举例来说,该业务功能节点同时连接有第一SFP和第二SFP,对应的SPI分别为SPI1和SPI2,该第一业务功能节点中保存有第一SFP的至少一条路由表项信息,所对应的路由前缀信息中的SPI为SPI1;该第一业务功能节点中同时保存有第二SFP的至少一条路由表项信息,所对应的路由前缀信息中的SPI为SPI2。
可选地,该方法200还包括:
S240,该业务功能转发节点基于路由表生成转发表,并基于该转发表转发报文。
具体而言,该业务功能节点可以根据当前的网络状况,从本地保存的路由表中,计算出最优路径,生成转发表,并基于转发表转发报文。作为示例而非限定,该转发表可以为FIB表。
也就是说,业务功能转发节点中可以保存至少一条SFP的路由表项信息,但并不用针对每一条SFP的路由表项信息生成转发表。当确定某条SFP为最优路径时,才生成转发表。可选地,该业务功能转发节点生成的转发表可以保存在本地,以便于再次基于相同的SFP转发报文时使用。更具体地说,业务功能转发节点具有控制面和转发面。控制节点将路由表项信息发送到业务功能转发节点的控制面,业务功能转发节点将该路由表项信息保存在控制面中,并根据进入SFC的报文的属性信息(例如,五元组信息),计算最优路径,然后根据最优路径信息生成转发表,将转发表下发到转发面,以便于转发面根据该转发表转发该报文。
需要说明的是,BGP等路由协议是在IETF定义的逐比特定义的协议规范,该类协议标准严格,互通性好,可以直接多厂家对接。相比于OpenFlow的流表,路由表和转发表(例如,FIB表)已经是目前非常成熟的编码格式,控制节点与业务功能转发节点的对接也比较容易。
因此,本发明实施例的SFC中用于转发报文的方法,控制节点将路由表项信息直接下发到业务功能转发节点,由业务功能转发节点自己生成转发表,通过使用成熟的协议将控制节点与业务功能转发节点间的交互标准化,使得控制节点与业务功能转发节点之间顺利对接。同时,由于业务功能转发节点能够根据当前网络状况,确定最优路径,生成转发表。并在传统的路由交换设备上通过SPI和SI作为路由来引导报文,即利用现有SDN设备上已经存在的路由策略,对以“SPI和SI”形式存在的路由进行灵活的处理。相比于现有的传统路由交换设备而言,更加方便、灵活。
可选地,该控制节点向该第一业务功能转发节点发送该路由表项信息,包括:
该控制节点生成BGP更新(Update)报文,该BGP Update报文承载该路由表项信息;
该控制节点向该业务功能转发节点发送该BGP Update报文。
在本发明实施例中,通过BGP报文来承载上述路由表项信息。作为示例而非限定,该BGP报文可以为BGP Update报文。
可选地,该控制节点生成BGP更新报文,该BGP更新报文承载该路由表项信息,包括:
该控制节点生成该BGP更新报文,该BGP更新报文包括多协议扩展可达网络层可达性信息(Multi-Protocol Reach Network Layer Reachability Information,简称“MP_REACH_NLRI”)属性字段,该MP_REACH_NLRI属性字段包括子地址族标识SAFI字段、NLRI字段和下一跳信息字段,该SAFI字段指示该MP_REACH_NLRI属性字段是基于SFC同步地址族所支持的封装格式封装的,该NLRI字段包括类型长度值TLV字段,该TLV字段的类型T字段表示该TLV字段的类型为SFC路由表项同步类型,该TLV字段的值V字段携带该SPI和该SI,该下一跳信息字段承载该下一跳信息。
在本发明实施例中,可以在现有的BGP地址族中新增BGP SFC Synchronization地址族,并基于新增的BGP SFC Synchronization地址族所支持的封装格式,封装上述路由表项信息。具体地,该BGP SFC Synchronization地址族新增的MP_REACH_NLRI的封装格式如图3所示。
图3是根据本发明一实施例的基于BGP SFC Synchronization地址族所支持的封装格式封装的MP_REACH_NLRI属性字段的示意图。MP_REACH_NLRI可以理解为网络层可达性信息(NLRI)的多协议扩展属性信息,它包括地址族信息域、下一跳信息域、网络层可达性信息(NLRI)域三部分。
其中,地址族信息域包括地址族标识字段(2字节)、子地址族标识字段(1字节)。地址族标识(Address Family Identifier,简称“AFI”)标识网络层协议,例如,AFI取1,表示IPv4;AFI取2,表示IPv6。子地址族标识(Subsequent Address Family Identifier,简称“SAFI”)标识子地址族的类型,例如,SAFI取1,表示单播;SAFI取2,表示组播;SAFI取128,表示虚拟专用网络(Virtual Private Network,简称“VPN”)。更具体地,AFI值为1,SAFI值为1,表示NLRI字段中承载的是IPv4单播路由;AFI值为1,SAFI值为128表示NLRI字段中承载的BGP-VPNv4路由;AFI值为1,SAFI值为4表示NLRI字段中承载的BGP标签路由。
在本发明实施例中,BGP SFC Synchronization地址族可以理解为现有的BGP协议中IPv4或IPv6地址族中扩展的子地址族,即,AFI值可以为1或2。SAFI的值可以根据国际互联网工程任务组(Internet Engineering Task Force,简称“IETF”)制定的标准确定。
下一跳信息域包括下一跳地址长度字段(1字节)和下一跳地址字段(可变长度)。下一跳地址长度字段用于标识下一跳地址字段的长度,下一跳地址字段的长度由下一跳地址长度字段所标识的长度决定。
下一跳信息域与NLRI域之间留有1字节保留字段。
NLRI域包括NLRI字段,NLRI字段进一步包括TLV字段(可变长度)。图4是根据本发明实施例的NLRI字段中TLV字段的示意图。其中,类型T字段表示该TLV字段的类型为SFC路由表项同步类型,长度L字段表示V字段的长度,值V字段携带SPI和SI。在本发明实施例中,具体地,T字段值为1时,可以标识SFC转发表项同步(Forwarding Entry Synchronization)类型;L字段值为32比特,即,4字节;V字段为3字节的SPI和1字节的SI。
应理解,这里所列举的Type1类型为SFC转发表项同步类型仅为示例性说明,不应对本发明构成任何限定。本发明实施例不排除通过Type1来指示其他类型,或者用其他方式来指示SFC转发表项同步类型的可能。并且,本发明实施例对于NLRI Type的类型的数量也并未特别限定。
进一步地,该路由表项信息还包括路由属性信息,路由属性信息包括以下至少一种流量分配参数的类型:权重、开销和带宽。
在本发明实施例中,业务功能转发节点在接收到路由表项信息时,根据其中携带的路由属性信息,对到达同一个目标节点的多个通道进行转发流量的分配。因此,使得流量在SFC中分配得更加合理和灵活。
可选地,该路由表项信息还包括路由属性信息,该路由属性信息包括以下至少一种流量分配参数的类型:权重、开销和带宽,
其中,该BGP更新报文还包括BGP SFC属性(Attribute)字段,该BGP SFCAttribute字段包括至少一个子TLV字段,每种流量分配参数的类型与该至少一个子TLV字段中的一个子TLV字段对应,每个子TLV字段包括T字段(2字节)、L字段(2字节)和V字段(由L字段的值决定)。
图5是根据本发明一实施例的BGP SFC Attribute字段中的Sub-TLV字段的示意图。其中,类型T字段长度为2字节,长度L字段长度为2字节,值V字段长度由长度L字段决定。每个Sub-TLV用于表示一种流量分配参数。其中,T字段表示流量分配参数的类型,例如,T字段值为1,可以表示权重;T字段值为2,可以表示开销;T字段值为3,可以表示带宽。
具体而言,可以在BGP Update报文中新定义一个BGP SFC属性(Attribute)信息,通过至少一个子(Sub)TLV来携带路由属性信息。作为示例而非限定,路由属性信息包括以下至少一种流量分配参数的类型:权重(Weight)、开销(Cost)和带宽(Bandwidth)。其中,T字段表示流量分配参数的类型,例如,T字段值为1,可以标识权重;T字段值为2,可以标识开销;T字段值为3,可以标识带宽。
举例来说,当控制节点向业务功能转发节点下发的路由表项信息的BGP SFCAttribute字段中的Sub-Type值为3,表示流量分配参数的类型为带宽,即表示此路由表项信息所指示的SFP所能使用的带宽值。当Sub-Value值为200M时,表示此路由表项信息所指示的SFP所能使用的带宽值为200M。当流量超过200M时,超出200M的流量不允许通过该路由表项信息所指示的SFP转发。
又例如,当控制节点向业务功能转发节点下发的路由表项信息的BGP SFCAttribute字段中的Sub-Type值为2,表示流量分配参数的类型为开销,即表示当有多条表项可以使用时,可以根据开销来优选主用表项,如果需要,还可以选出备用表项。也就是说,当流量分配参数的类型为开销时,控制节点向业务功能转发节点下发至少有两个具有相同SPI值和SI值的路由表项信息。
这里,需要说明的是,由上文中描述可知(可参看图1),当控制粒度为连接于SFC节点之间的路由交换设备时,业务功能转发节点在控制节点下发的SPI值和SI值相同的多个路由表项信息中,可以分别对应于多个不同的下一跳信息,分别对应于不同的下一跳路由交换设备,或者说,对应于不同的通道,最终到达同一个SFC节点(即,目标节点)。
例如,表项1为:
Figure BDA0002556153610000151
表项2为:
Figure BDA0002556153610000152
可以看到,表项1和表项2具有相同的SPI值和SI值,但对应的下一跳信息不同。例如,可参看图1,表项1通过SFF1将报文引导至Router11,表项2通过SFF1将报文引导至Router21。即,该业务功能转发节点至目标节点之间具有两条通道。或者说,在两个SFC节点之间可以通过多个路由交换设备连接,该两个SFC节点之间具有多个路由交换设备连接构成的两条通道。其中,一条开销值为5,另一条开销值为10。业务功能转发节点在接收到这个携带开销值的路由表项信息时,可以使用开销值较小的通道来转发报文。换句话说,开销值越小,可以理解为优先级越高。或者,还可以将开销值较小的通道作为主用通道,把开销值较大的通道作为备用通道。
再例如,当控制节点向业务功能转发节点下发的路由表项信息的BGP SFCAttribute字段中的Sub-Type值为1时,表示流量分配参数的类型为权重,即表示当有多条表项负载分担时,可以根据权重计算每条表项所承载的流量比例。也就是说,当流量分配参数的类型为权重时,控制节点向业务功能转发节点下发至少有两个具有相同SPI值和SI值相同的路由表项信息。例如,表项3为:
Figure BDA0002556153610000161
表项4为:
Figure BDA0002556153610000162
表项5为:
Figure BDA0002556153610000163
可以看到,表项3、表项4和表项5具有相同的SPI和SI值,但对应的下一跳信息不同。例如,可参看图1,表项3通过SFF1将报文引导至Router11,表项4通过SFF1将报文引导至Router21,表项5通过SFF1将报文引导至Router31。即,该业务功能转发节点至目标节点之间具有三条通道。或者说,在两个SFC节点直接可以通过多个路由交换设备连接,该两个SFC节点之间具有多个路由交换设备连接构成的两条通道。
业务功能转发节点在接收到这个携带权重值的路由表项信息时,可以根据各通道的权重值来负载分担流量。例如,在本例中,当使用这三个表项所对应的通道来分担流量时,表项3对应的通道来承担20%(20/(20+30+50))的流量,表项4对应的通道来承担30%(30/(20+30+50))的流量,表项5对应的通道来分担50%(50/(20+30+50))的流量。
再例如,在上例中,当表项5被删除时,将使用剩下的两个表项所对应的通道来分担流量转发,表项3对应的通道来承担40%(20/(20+30))的流量,表项4对应的通道来承担60%(30/(20+30))的流量。当只有一个可用表项时,权重值不起作用。
应理解,上述列举的流量分配参数的类型仅为示例性说明,不应对本发明构成任何限定。用于承载路由属性信息的字段并不限于上述BGP SFC Attribute字段,还可以通过其他现有的或新增的字段来承载,本发明对此并未特别限定。
还应理解,上述列举的基于流量分配参数对流量进行分配的方法仅为示例性说明,不应对本发明构成任何限定。例如,在本发明实施例中,控制节点可以在路由表项信息中携带多个类型的流量分配参数,转发节点可以同时基于多个流量分配参数的类型对流量进行分配。
还应理解,上述列举的通过BGP Update报文以及报文中的各字段承载路由表项信息的方法仅为示例性说明,不应对本发明构成任何限定。本发明不排除通过已有的或新增的其他字段承载上述路由表项信息的可能。
可选地,S230该业务功能转发节点将该路由表项信息保存在该业务功能转发节点的路由表中,具体包括:
该业务功能转发节点根据该SPI和该SI,在该业务功能转发节点的路由表中查找具有相同SPI和SI的目标路由表项信息;
该业务功能转发节点在查找到所述目标路由表项信息时,根据该路由表项信息,更新所述目标路由表项信息;或者,
该业务功能转发节点在未查找到所述目标路由表项信息时,保存该路由表项信息。
具体而言,业务功能转发节点可以将路由表项信息中的SPI、SI值和下一跳信息作为查找的关键(Key)值,在本地保存的路由表中查找具有相同SPI、SI值以及相同下一跳信息的路由表项信息(为便于区分和说明,将业务功能转发节点在本地查找到的路由表项信息记作目标路由表项信息)。更具体地,业务功能转发节点可以在BGP SFCSynchronization地址族的路由表中查找Type1类型(即,SFC路由表项同步类型)的表项。
若业务功能转发节点在本地保存的路由表中查找到目标路由表项信息,则根据接收到的路由表项信息所携带的路由属性信息,更新目标路由表项信息;若业务功能转发节点在本地保存的路由表中未查找到目标路由表项信息,则直接将接收到的路由表项信息直接保存到本地保存的路由表中,或者,更具体地说,新创建一条Type1类型的表项,将该路由表项信息保存到新创建的表项中。
因此,本发明实施例的SFC中用于转发报文的方法,通过在路由表项信息中增加路由属性信息,使得业务功能转发节点能够根据流量分配参数更加合理、灵活地分配流量。
应理解,上述SFC中用于转发报文的方法是针对目前SDN中传统路由交换设备和SDN路由交换设备并存的过度阶段,而提出的一种用于标准化控制器与路由交换设备之间交互的方法。随着SDN的发展,SDN路由交换设备逐渐普及。当SDN路由交换设备成为广泛使用的路由交换设备时,可以对目前过度阶段的路由表项信息同步方式可以进行进一步地改进,使得控制面与转发面完全分离,控制器下发转发表项信息,路由转发设备不需要自行计算转发表。
由此,本方面另提供一种SFC中用于转发报文的方法,能够使得控制面与转发面完全分离。
以下,结合图6详细说明根据本发明另一实施例的SFC中用于转发报文的方法。
图6是根据本发明另一实施例的SFC中用于转发报文的方法300的示意性流程图。应理解,图6示出了SFC中用于转发报文的方法的详细的通信步骤或操作,但这些步骤或操作仅是示例,本发明实施例还可以执行其它操作或者图6中的各种操作的变形。此外,图6中的各个步骤可以按照与图6呈现的不同的顺序来执行,并且有可能并非要执行图6中的全部操作。
如图6所示,该方法300包括:
S310,控制节点确定SFC中的业务功能路径SFP中的业务功能转发节点的转发表项信息。
具体而言,该转发表项信息记录有转发前缀信息和下一跳信息的映射关系,该转发前缀信息包括业务路径标识SPI和业务索引SI,该SPI用于标识该SFP,该SI用于标识该业务功能转发节点在该SFP中的位置,该下一跳信息用于指示该业务功能转发节点在该SFP的下一跳节点。
S320,控制节点生成边界网关协议BGP报文,该BGP报文承载该转发表项信息。
具体而言,该控制节点可以将该转发表项信息承载在BGP报文中。BGP报文承载转发表项信息的具体方法与方法200中通过BGP Update报文承载路由表项信息的具体方法相似,为了简洁,这里不再赘述。
可选地,S320控制节点生成边界网关协议BGP报文,该BGP报文承载该转发表项信息,包括:
控制节点生成该BGP报文,该BGP报文包括基于SFC同步地址族所支持的封装格式封装的多协议扩展可达网络层可达性信息MP_REACH_NLRI属性字段,该MP_REACH_NLRI属性字段包括NLRI字段和下一跳信息字段,该NLRI字段包括类型长度值TLV字段,该TLV字段的类型T字段表示该TLV字段的类型为SFC转发表项同步类型,该TLV字段的值V字段携带该SPI和该SI,该下一跳信息字段承载该下一跳信息。
可选地,该转发表项信息还包括转发属性信息,该转发属性信息包括以下至少一种流量分配参数的类型:权重、开销和带宽,
其中,该BGP报文还包括BGP SFC属性Attribute字段该BGP SFC Attribute字段包括至少一个子TLV字段,每种流量分配参数的类型与该至少一个子TLV字段中的一个子TLV字段对应,每个子TLV字段包括T字段、长度L字段和V字段,该T字段表示该流量分配参数的类型中的任意一种,该V字段指示基于所对应的流量分配参数的类型对该报文所承载的流量进行分配的参数。具体承载方式与上述实施例中相似,此处不再赘述。
S330,控制节点向业务功能转发节点发送该BGP报文,该BGP报文承载的该转发表项信息用于指示该业务功能转发节点转发报文。
S340,该业务功能转发节点将该转发表项信息保存在该业务功能转发节点的转发表中。
该业务功能转发节点保存该转发表项信息,以便于在后续接收到相同流量特征信息的报文时,直接根据该转发表项信息进行报文转发。
可选地,该方法300还包括:
S350该业务功能转发节点根据转发表项信息转发报文。
可选地,在本发明实施例中,该BGP报文可以为BGP Update报文。
应理解,在本发明实施例中,业务功能转发节点可以在转发平面保存有转发表。业务功能转发节点保存转发表项信息的具体方法,与上文中描述的业务功能转发节点保存路由表项信息的具体方法相似。其区别仅在于,路由表项信息可以保存在业务功能转发节点的控制平面,转发表项信息可以保存在业务功能转发节点的转发平面。为了简洁,这里省略对业务功能转发节点保存转发表项信息的具体方法的详细说明。
需要注意的是,与方法200不同的是,在本发明实施例中,控制节点可以直接根据路由表确定各业务功能转发节点的转发表项信息,并通过BGP报文封装转发表项信息,下发给各业务功能转发节点。业务功能转发节点中可以不保存路由表,只保存转发表。或者说,业务功能转发节点可以不作计算,只进行报文转发。因此,将控制面与转发面完全分离开来,便于管理。
还需要说明的是,方法200中所述的路由表项信息所指示的信息与方法300中所述的转发表项信息所指示的信息的内容是相似的,都可以用于指示业务功能节点的SPI、SI和下一跳信息,或者,SPI、SI、下一跳信息和路由属性信息。区别在于,在方法200中,路由表项信息可以保存在业务功能转发节点的控制平面的路由表中,需要通过业务功能转发节点自行计算生成最优路径,再基于最优路径生成转发表,并基于转发表进行流量匹配和报文转发;在方法300中,转发表项信息可以直接保存在业务功能转发节点的转发平面中,直接用于指导业务功能转发节点进行流量匹配和报文转发。
应理解,“路由表项信息”和“转发表项信息”仅为用于区分上述两种方法而分别命名的称呼,不应对本发明构成任何限定,本发明也不应限于此。例如,在方法300中,转发表项信息也可以称为路由表项信息,或者,在方法200中,路由表项信息也可以称为转发表项信息。
与此相似地,如上所述的“路由属性信息”和“转发属性信息”、“路由前缀信息”和“转发前缀信息”也是用于区分上述两种方法而分别命名的称呼,不应对本发明构成任何限定,本发明也不应限于此。
还应理解,上述列举的通过BGP报文以及报文中的各字段承载转发表项信息的方法仅为示例性说明,不应对本发明构成任何限定。本发明不排除通过已有的或新增的其他字段承载上述转发表项信息的可能。
因此,根据本发明实施例的SFC中用于转发报文的方法,控制节点通过BGP报文将转发表项信息直接下发到业务功能转发节点,业务功能转发节点可以直接根据转发表项信息转发报文。通过使用成熟的协议将控制节点与业务功能转发节点间的交互标准化,使控制节点与业务功能转发节点间顺利对接。同时,将控制面与转发面分离开来,使得各个转发节点的控制平面集中在控制器上,便于实施统一的业务部署策略,实施统一的管理和维护策略。
以上,结合图2至图6详细说明了根据本发明实施例的SFC中用于转发报文的方法。以下,结合图7至图16详细说明根据本发明实施例的SFC中用于转发报文的装置和系统。
图7是根据本发明一实施例的控制节点400的示意性框图。如图7所示,该控制节点400包括:确定模块410和发送模块420。
其中,该确定模块410用于确定业务功能链SFC中的业务功能路径SFP中的业务功能转发节点的路由表项信息,该路由表项信息记录有路由前缀信息和下一跳信息的映射关系,该路由前缀信息包括业务路径标识SPI和业务索引SI,该SPI用于标识该SFP,该SI用于标识该业务功能转发节点在该SFP中的位置,该下一跳信息用于指示该业务功能转发节点的下一跳节点;
该发送模块420用于向该业务功能转发节点发送该路由表项信息,该路由表项信息用于该业务功能转发节点生成转发表,该转发表用于指示该业务功能转发节点转发报文。
可选地,该控制节点400还包括生成模块,用于生成边界网关协议BGP更新报文,该BGP更新报文承载该路由表项信息;
该发送模块420具体用于向该业务功能转发节点发送该BGP更新报文。
可选地,该生成模块具体用于生成该BGP更新报文,该BGP更新报文包括多协议扩展可达网络层可达性信息MP_REACH_NLRI属性字段,该MP_REACH_NLRI属性字段子地址族标识SAFI字段、包括NLRI字段和下一跳信息字段,该SAFI字段指示该MP_REACH_NLRI属性字段是基于SFC同步地址族所支持的封装格式封装的,该NLRI字段包括类型长度值TLV字段,该TLV字段的类型T字段表示该TLV字段的类型为SFC路由表项同步类型,该TLV字段的值V字段携带该SPI和该SI,该下一跳信息字段承载该下一跳信息。
可选地,该路由表项信息还包括路由属性信息,该路由属性信息包括以下至少一种流量分配参数的类型:权重、开销和带宽,
其中,该BGP更新报文还包括BGP SFC属性Attribute字段该BGP SFC Attribute字段包括至少一个子TLV字段,每种流量分配参数的类型与该至少一个子TLV字段中的一个子TLV字段对应,每个子TLV字段包括T字段、L字段和V字段,该T字段表示该流量分配参数的类型中的任意一种,该V字段指示基于所对应的流量分配参数的类型对该报文所承载的流量进行分配的参数。
根据本发明实施例的控制节点400可对应于根据本发明实施例的SFC中用于转发报文的方法中的控制节点,并且,该控制节点400中的各模块和上述其他操作和/或功能分别为了实现图2中的方法200的相应流程,为了简洁,在此不再赘述。
因此,根据本发明实施例的控制节点,通过将路由表项信息直接下发到业务功能转发节点,由业务功能转发节点自己生成转发表,通过使用成熟的协议将控制节点与业务功能转发节点间的交互标准化,使得控制节点与业务功能转发节点之间顺利对接。
图8是根据本发明一实施例的业务功能转发节点500的示意性框图。如图8所示,该业务功能转发节点500包括:接收模块510和处理模块500。
其中,该接收模块510用于接收控制节点发送的路由表项信息,该路由表项信息记录有路由前缀信息和下一跳信息的映射关系,该路由前缀信息包括业务路径标识SPI和业务索引SI,该SPI用于标识该SFP,该SI用于标识该业务功能转发节点在该SFP中的位置,该下一跳信息用于指示该业务功能转发节点的下一跳节点;
该处理模块520用于将该路由表项信息保存在该业务功能转发节点的路由表中,以便于该业务功能转发节点根据该路由表生成转发表,并根据该转发表转发报文。
可选地,该接收模块510具体用于接收该控制节点发送的边界网关协议BGP更新报文,该BGP更新报文承载该路由表项信息。
可选地,该BGP更新报文包括多协议扩展可达网络层可达性信息MP_REACH_NLRI属性字段,该MP_REACH_NLRI属性字段包括子地址族标识SAFI字段、NLRI字段和下一跳信息字段,该SAFI字段指示该MP_REACH_NLRI属性字段是基于SFC同步地址族所支持的封装格式封装的,该NLRI字段包括类型长度值TLV字段,该TLV字段的类型T字段表示该TLV字段的类型为SFC路由表项同步类型,该TLV字段的值V字段携带该SPI和该SI,该下一跳信息字段承载该下一跳信息。
可选地,该路由表项信息还包括路由属性信息,该路由属性信息包括以下至少一种流量分配参数的类型:权重、开销和带宽,
其中,该BGP更新报文还包括BGP SFC属性Attribute字段,该BGP SFC Attribute字段包括至少一个子TLV字段,每种流量分配参数的类型与该至少一个子TLV字段中的一个子TLV字段对应,每个子TLV字段包括T字段、L字段和V字段,该T字段表示该流量分配参数的类型中的任意一种,该V字段指示基于所对应的流量分配参数的类型对该报文所承载的流量进行分配的参数。
可选地,该处理模块520具体用于根据该SPI和该SI,在该业务功能转发节点的路由表中查找具有相同SPI和SI的目标路由表项信息;
并在查找到该目标路由表项信息时,根据该路由表项信息,更新该目标路由表项信息;或者,
在未查找到该目标路由表项信息时,保存该路由表项信息。
根据本发明实施例的业务功能转发节点500可对应于根据本发明实施例的SFC中用于转发报文的方法中的业务功能转发节点,并且,该业务功能转发节点500中的各模块和上述其他操作和/或功能分别为了实现图2中的方法200的相应流程,为了简洁,在此不再赘述。
因此,根据本发明实施例的业务功能转发节点,接收控制节点下发的路由表项信息,基于路由表项信息生成转发表。通过使用成熟的协议将控制节点与业务功能转发节点间的交互标准化,使得控制节点与业务功能转发节点之间顺利对接。
图9是根据本发明一实施例的SFC中用于转发报文的系统600的示意性框图。如图9所示,该报文转发系统600包括上述实施例描述的控制节点400和上述实施例描述的业务功能转发节点500。
应理解,该报文转发系统600中的各个模块和其它操作和/或功能分别为了实现图2中的方法200的相应流程,为了简洁,在此不再赘述。
因此,根据本发明实施例的SFC中用于转发报文的系统,通过控制节点向业务功能转发节点直接下发路由表项信息,业务功能转发节点基于路由表项信息生成转发表。通过使用成熟的协议将控制节点与业务功能转发节点间的交互标准化,使得控制节点与业务功能转发节点之间顺利对接。
图10是根据本发明另一实施例的控制节点700的示意性框图。如图10所示,该控制节点700包括:确定模块710、生成模块720和发送模块730。
其中,该确定模块710用于确定SFC中的业务功能路径SFP中的业务功能转发节点的转发表项信息,该转发表项信息记录有转发前缀信息和下一跳信息的映射关系,该转发前缀信息包括业务路径标识SPI和业务索引SI,该SPI用于标识该SFP,该SI用于标识该业务功能转发节点在该SFP中的位置,该下一跳信息用于指示该业务功能转发节点的下一跳节点;
该生成模块720用于生成边界网关协议BGP报文,该BGP报文承载该转发表项信息;
该发送模块730用于向该业务功能转发节点发送该BGP报文,该BGP报文承载的该转发表项信息用于指示该业务功能转发节点转发报文。
可选地,该生成模块720具体用于生成该BGP报文,该BGP报文包括多协议扩展可达网络层可达性信息MP_REACH_NLRI属性字段,该MP_REACH_NLRI属性字段包括子地址族标识SAFI字段、NLRI字段和下一跳信息字段,该SAFI字段指示该MP_REACH_NLRI属性字段是基于SFC同步地址族所支持的封装格式封装的,该NLRI字段包括类型长度值TLV字段,该TLV字段的类型T字段表示该TLV字段的类型为SFC转发表项同步类型,该TLV字段的值V字段携带该SPI和该SI,该下一跳信息字段承载该下一跳信息。
可选地,该转发表项信息包括转发属性信息,该转发属性信息包括以下至少一种流量分配参数的类型:权重、开销和带宽,
其中,该BGP报文包括BGP SFC属性Attribute字段,该BGP SFC Attribute字段包括至少一个子TLV字段,每种流量分配参数的类型与该至少一个子TLV字段中的一个子TLV字段对应,每个子TLV字段包括T字段、长度L字段和V字段,该T字段表示该流量分配参数的类型中的任意一种,该V字段指示基于所对应的流量分配参数的类型对该报文所承载的流量进行分配的参数。
可选地,该BGP报文为BGP更新报文。
根据本发明实施例的控制节点700可对应于根据本发明实施例的SFC中用于转发报文的方法中的控制节点,并且,该控制节点700中的各模块和上述其他操作和/或功能分别为了实现图6中的方法300的相应流程,为了简洁,在此不再赘述。
因此,根据本发明实施例的控制节点,通过BGP报文将转发表项信息直接下发到业务功能转发节点,业务功能转发节点可以直接根据转发表项信息转发报文。通过使用成熟的协议将控制节点与业务功能转发节点间的交互标准化,使控制节点与业务功能转发节点间顺利对接。同时,将控制面与转发面分离开来,便于管理。
图11是根据本发明另一实施例的业务功能转发节点800的示意性框图。如图11所示,该业务功能转发节点800包括:接收模块810和处理模块820。
其中,该接收模块810用于接收控制节点发送的边界网关协议BGP报文,该BGP报文承载转发表项信息,该转发表项信息记录有SFC转发前缀信息和下一跳信息的映射关系,该SFC转发前缀信息包括业务路径标识SPI和业务索引SI,该SPI用于标识该SFP,该SI用于标识该业务功能转发节点在该SFP中的位置,该下一跳信息用于指示该业务功能转发节点的下一跳节点;
该处理模块820用于保存该转发表项信息,以便于该业务功能转发节点800根据该转发表项信息转发报文。
可选地,该BGP报文包括多协议扩展可达网络层可达性信息MP_REACH_NLRI属性字段,该MP_REACH_NLRI属性字段包括子地址族标识SAFI字段、NLRI字段和下一跳信息字段,该SAFI字段指示该MP_REACH_NLRI属性字段是基于SFC同步地址族所支持的封装格式封装的,该NLRI字段包括类型长度值TLV字段,该TLV字段的类型T字段表示该TLV字段的类型为SFC转发表项同步类型,该TLV字段的值V字段携带该SPI和该SI,该下一跳信息字段承载该下一跳信息。
可选地,该转发表项信息包括转发属性信息,该转发属性信息包括以下至少一种流量分配参数的类型:权重、开销和带宽,
其中,该BGP报文包括BGP SFC属性Attribute字段该BGP SFC Attribute字段包括至少一个子TLV字段,每种流量分配参数的类型与该至少一个子TLV字段中的一个子TLV字段对应,每个子TLV字段包括T字段、长度L字段和V字段,该T字段表示该流量分配参数的类型中的任意一种,该V字段指示基于所对应的流量分配参数的类型对该报文所承载的流量进行分配的参数。
可选地,该处理模块820具体用于根据该SPI和该SI,在该业务功能转发节点的转发表中查找具有相同SPI和SI的目标转发表项信息;
并在查找到该目标转发表项信息时,根据该转发表项信息,更新该目标转发表项信息;或者,
在未查找到该目标转发表项信息时,保存该转发表项信息。
可选地,该BGP报文为BGP更新报文。
根据本发明实施例的业务功能转发节点800可对应于根据本发明实施例的SFC中用于转发报文的方法中的业务功能转发节点,并且,该业务功能转发节点800中的各模块和上述其他操作和/或功能分别为了实现图6中的方法300的相应流程,为了简洁,在此不再赘述。
因此,根据本发明实施例的业务功能转发节点,接收控制节点下发的BGP报文,并直接根据转发表项信息转发报文。通过使用成熟的协议将控制节点与业务功能转发节点间的交互标准化,使控制节点与业务功能转发节点间顺利对接。同时,将控制面与转发面分离开来,便于管理。
图12是根据本发明另一实施例的SFC中用于转发报文的系统900的示意性框图。如图12所示,该报文转发系统900包括上述实施例描述的控制节点700和上述实施例描述的业务功能转发节点800。
应理解,该报文转发系统900中的各个模块和其它操作和/或功能分别为了实现图6中的方法300的相应流程,为了简洁,在此不再赘述。
图13是根据本发明一实施例的控制节点10的另一示意性框图。如图13所示,该控制节点10包括:接收器11、发送器12、处理器13、存储器14和总线系统15。其中,接收器11、发送器12、处理器13和存储器14通过总线系统15相连,该存储器14用于存储指令,该处理器13用于执行该存储器14存储的指令,以控制接收器14接收信号,并控制发送器12发送信号。其中,
该处理器13用于确定业务功能链SFC中的业务功能路径SFP中的业务功能转发节点的路由表项信息,该路由表项信息记录有路由前缀信息和下一跳信息的映射关系,该路由前缀信息包括业务路径标识SPI和业务索引SI,该SPI用于标识该SFP,该SI用于标识该业务功能转发节点在该SFP中的位置,该下一跳信息用于指示该业务功能转发节点的下一跳节点;
该发送器12用于向该业务功能转发节点发送该路由表项信息,该路由表项信息用于该业务功能转发节点生成转发表,该转发表用于指示该业务功能转发节点转发报文。
应理解,在本发明实施例中,该处理器13可以是中央处理单元(CentralProcessing Unit,简称为“CPU”),该处理器13还可以是其他通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
该存储器14可以包括只读存储器和随机存取存储器,并向处理器13提供指令和数据。存储器14的一部分还可以包括非易失性随机存取存储器。例如,存储器14还可以存储设备类型的信息。
该总线系统15除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线等。但是为了清楚说明起见,在图中将各种总线都标为总线系统15。
在实现过程中,上述方法的各步骤可以通过处理器13中的硬件的集成逻辑电路或者软件形式的指令完成。结合本发明实施例所公开的定位方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器14,处理器13读取存储器14中的信息,结合其硬件完成上述方法的步骤。为避免重复,这里不再详细描述。
可选地,该处理器13还用于生成边界网关协议BGP更新报文,该BGP更新报文承载该路由表项信息;
该发送器12具体用于向该业务功能转发节点发送该BGP更新报文。
可选地,该处理器13具体用于生成该BGP更新报文,该BGP更新报文包括多协议扩展可达网络层可达性信息MP_REACH_NLRI属性字段,该MP_REACH_NLRI属性字段包括子地址族标识SAFI字段、NLRI字段和下一跳信息字段,该SAFI字段指示该MP_REACH_NLRI属性字段是基于SFC同步地址族所支持的封装格式封装的,该NLRI字段包括类型长度值TLV字段,该TLV字段的类型T字段表示该TLV字段的类型为SFC路由表项同步类型,该TLV字段的值V字段携带该SPI和该SI,该下一跳信息字段承载该下一跳信息。
可选地,该路由表项信息还包括路由属性信息,该路由属性信息包括以下至少一种流量分配参数的类型:权重、开销和带宽,
其中,该BGP更新报文还包括BGP SFC属性Attribute字段,该BGP SFC Attribute字段包括至少一个子TLV字段,每种流量分配参数的类型与该至少一个子TLV字段中的一个子TLV字段对应,每个子TLV字段包括T字段、L字段和V字段,该T字段表示该流量分配参数的类型中的任意一种,该V字段指示基于所对应的流量分配参数的类型对该报文所承载的流量进行分配的参数。
根据本发明实施例的控制节点10可对应于根据本发明实施例的SFC中用于转发报文的方法中的控制节点,并且,该控制节点10中的各模块和上述其他操作和/或功能分别为了实现图2中的方法200的相应流程,为了简洁,在此不再赘述。
因此,根据本发明实施例的控制节点,通过将路由表项信息直接下发到业务功能转发节点,由业务功能转发节点自己生成转发表,通过使用成熟的协议将控制节点与业务功能转发节点间的交互标准化,使得控制节点与业务功能转发节点之间顺利对接。
图14是根据本发明一实施例的业务功能转发节点20的另一示意性框图。如图14所示,该业务功能转发节点20包括:接收器21、发送器22、处理器23、存储器24和总线系统25。其中,接收器21、发送器22、处理器23和存储器24通过总线系统25相连,该存储器24用于存储指令,该处理器23用于执行该存储器24存储的指令,以控制接收器24接收信号,并控制发送器22发送信号。其中,
该接收器21用于接收控制节点发送的路由表项信息,该路由表项信息记录有路由前缀信息和下一跳信息的映射关系,该路由前缀信息包括业务路径标识SPI和业务索引SI,该SPI用于标识该SFP,该SI用于标识该业务功能转发节点在该SFP中的位置,该下一跳信息用于指示该业务功能转发节点的下一跳节点;
该处理器23用于基于该路由表项信息,生成转发表;
该发送器22用于基于该转发表转发报文。
可选地,该接收器21具体用于接收该控制节点发送的边界网关协议BGP更新报文,该BGP更新报文承载该路由表项信息。
可选地,该BGP更新报文包括多协议扩展可达网络层可达性信息MP_REACH_NLRI属性字段,该MP_REACH_NLRI属性字段包括子地址族标识SAFI字段、NLRI字段和下一跳信息字段,该SAFI字段指示该MP_REACH_NLRI属性字段是基于SFC同步地址族所支持的封装格式封装的,该NLRI字段包括类型长度值TLV字段,该TLV字段的类型T字段表示该TLV字段的类型为SFC路由表项同步类型,该TLV字段的值V字段携带该SPI和该SI,该下一跳信息字段承载该下一跳信息。
可选地,该路由表项信息还包括路由属性信息,该路由属性信息包括以下至少一种流量分配参数的类型:权重、开销和带宽,
其中,该BGP更新报文还包括BGP SFC属性Attribute字段,该BGP SFC Attribute字段包括至少一个子TLV字段,每种流量分配参数的类型与该至少一个子TLV字段中的一个子TLV字段对应,每个子TLV字段包括T字段、L字段和V字段,该T字段表示该流量分配参数的类型中的任意一种,该V字段指示基于所对应的流量分配参数的类型对该报文所承载的流量进行分配的参数。
可选地,该处理器23具体用于根据该SPI和该SI,在该业务功能转发节点的路由表中查找具有相同SPI和SI的目标路由表项信息;
并在查找到该目标路由表项信息时,根据该路由表项信息,更新该目标路由表项信息;或者,
在未查找到该目标路由表项信息时,保存该路由表项信息。
根据本发明实施例的业务功能转发节点20可对应于根据本发明实施例的SFC中用于转发报文的方法中的业务功能转发节点,并且,该业务功能转发节点20中的各模块和上述其他操作和/或功能分别为了实现图2中的方法200的相应流程,为了简洁,在此不再赘述。
因此,根据本发明实施例的业务功能转发节点,接收控制节点下发的路由表项信息,基于路由表项信息生成转发表。通过使用成熟的协议将控制节点与业务功能转发节点间的交互标准化,使得控制节点与业务功能转发节点之间顺利对接。
图15是根据本发明另一实施例的控制节点30的另一示意性框图。如图15所示,该控制节点30包括:接收器31、发送器32、处理器33、存储器34和总线系统35。其中,接收器31、发送器32、处理器33和存储器34通过总线系统35相连,该存储器34用于存储指令,该处理器33用于执行该存储器34存储的指令,以控制接收器34接收信号,并控制发送器32发送信号。其中,
该处理器33用于确定SFC中的业务功能路径SFP中的业务功能转发节点的转发表项信息,该转发表项信息记录有转发前缀信息和下一跳信息的映射关系,该转发前缀信息包括业务路径标识SPI和业务索引SI,该SPI用于标识该SFP,该SI用于标识该业务功能转发节点在该SFP中的位置,该下一跳信息用于指示该业务功能转发节点的下一跳节点;
该处理器33还用于生成边界网关协议BGP报文,该BGP报文承载该转发表项信息;
该发送器32用于向该业务功能转发节点发送该BGP报文,该BGP报文承载的该转发表项信息用于指示该业务功能转发节点转发报文。
可选地,该处理器33具体用于生成该BGP报文,该BGP报文包括多协议扩展可达网络层可达性信息MP_REACH_NLRI属性字段,该MP_REACH_NLRI属性字段包括子地址族标识SAFI字段、NLRI字段和下一跳信息字段,该SAFI字段指示该MP_REACH_NLRI属性字段是基于SFC同步地址族所支持的封装格式封装的,该NLRI字段包括类型长度值TLV字段,该TLV字段的类型T字段表示该TLV字段的类型为SFC转发表项同步类型,该TLV字段的值V字段携带该SPI和该SI,该下一跳信息字段承载该下一跳信息。
可选地,该转发表项信息还包括转发属性信息,该转发属性信息包括以下至少一种流量分配参数的类型:权重、开销和带宽,
其中,该BGP报文还包括BGP SFC属性Attribute字段,该BGP SFC Attribute字段包括至少一个子TLV字段,每种流量分配参数的类型与该至少一个子TLV字段中的一个子TLV字段对应,每个子TLV字段包括T字段、长度L字段和V字段,该T字段表示该流量分配参数的类型中的任意一种,该V字段指示基于所对应的流量分配参数的类型对该报文所承载的流量进行分配的参数。
可选地,该BGP报文为BGP更新报文。
根据本发明实施例的控制节点30可对应于根据本发明实施例的SFC中用于转发报文的方法中的控制节点,并且,该控制节点30中的各模块和上述其他操作和/或功能分别为了实现图6中的方法300的相应流程,为了简洁,在此不再赘述。
因此,根据本发明实施例的控制节点,通过BGP报文将转发表项信息直接下发到业务功能转发节点,业务功能转发节点可以直接根据转发表项信息转发报文。通过使用成熟的协议将控制节点与业务功能转发节点间的交互标准化,使控制节点与业务功能转发节点间顺利对接。同时,将控制面与转发面分离开来,便于管理。
图16是根据本发明另一实施例的业务功能转发节点40的另一示意性框图。如图16所示,该业务功能转发节点40包括:接收器41、发送器42、处理器43、存储器44和总线系统45。其中,接收器41、发送器42、处理器43和存储器44通过总线系统45相连,该存储器44用于存储指令,该处理器43用于执行该存储器44存储的指令,以控制接收器44接收信号,并控制发送器42发送信号。其中,
该接收器41用于接收控制节点发送的边界网关协议BGP报文,该BGP报文承载转发表项信息,该转发表项信息记录有SFC转发前缀信息和下一跳信息的映射关系,该SFC转发前缀信息包括业务路径标识SPI和业务索引SI,该SPI用于标识该SFP,该SI用于标识该业务功能转发节点在该SFP中的位置,该下一跳信息用于指示该业务功能转发节点的下一跳节点;
该发送器42用于根据该转发表项信息转发报文。
可选地,该BGP报文包括多协议扩展可达网络层可达性信息MP_REACH_NLRI属性字段,该MP_REACH_NLRI属性字段包括子地址族标识SAFI字段、NLRI字段和下一跳信息字段,该SAFI字段指示该MP_REACH_NLRI属性字段是基于SFC同步地址族所支持的封装格式封装的该NLRI字段包括类型长度值TLV字段,该TLV字段的类型T字段表示该TLV字段的类型为SFC转发表项同步类型,该TLV字段的值V字段携带该SPI和该SI,该下一跳信息字段承载该下一跳信息。
可选地,该转发表项信息还包括转发属性信息,该转发属性信息包括以下至少一种流量分配参数的类型:权重、开销和带宽,
其中,该BGP报文还包括BGP SFC属性Attribute字段该BGP SFC Attribute字段包括至少一个子TLV字段,每种流量分配参数的类型与该至少一个子TLV字段中的一个子TLV字段对应,每个子TLV字段包括T字段、长度L字段和V字段,该T字段表示该流量分配参数的类型中的任意一种,该V字段指示基于所对应的流量分配参数的类型对该报文所承载的流量进行分配的参数。
可选地,该处理器43具体用于根据该SPI和该SI,在该业务功能转发节点的转发表中查找具有相同SPI和SI的目标转发表项信息;
并在查找到该目标转发表项信息时,根据该转发表项信息,更新该目标转发表项信息;或者,
在未查找到该目标转发表项信息时,保存该转发表项信息。
可选地,该BGP报文为BGP更新报文。
根据本发明实施例的业务功能转发节点40可对应于根据本发明实施例的SFC中用于转发报文的方法中的业务功能转发节点,并且,该业务功能转发节点40中的各模块和上述其他操作和/或功能分别为了实现图6中的方法300的相应流程,为了简洁,在此不再赘述。
因此,根据本发明实施例的业务功能转发节点,接收控制节点下发的BGP报文,并直接根据转发表项信息转发报文。通过使用成熟的协议将控制节点与业务功能转发节点间的交互标准化,使控制节点与业务功能转发节点间顺利对接。同时,将控制面与转发面分离开来,便于管理。
应理解,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
应理解,在本发明的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

Claims (33)

1.一种业务功能链SFC中用于转发报文的方法,其特征在于,包括:
控制节点确定路由表项信息,所述路由表项信息包括第一映射关系,所述第一映射关系包括业务功能路径SFP的业务路径标识SPI、第一业务索引SI和第一下一跳信息,所述SPI用于标识所述SFP,所述第一SI在报文经过所述SFP上的一个业务功能SF处理后对应的数值减小;
所述控制节点向所述SFP上的业务功能转发节点发送所述路由表项信息。
2.根据权利要求1所述的方法,其特征在于,所述控制节点向所述业务功能转发节点发送所述路由表项包括:
所述控制节点向所述业务功能转发节点发送边界网关协议BGP更新报文,所述BGP更新报文包括所述路由表项信息。
3.根据权利要求2所述的方法,其特征在于,所述BGP更新报文包括多协议扩展可达网络层可达性信息MP_REACH_NLRI属性字段,所述MP_REACH_NLRI属性字段包括所述SPI。
4.根据权利要求1-3任一所述的方法,其特征在于,所述第一下一跳信息为所述SFP上第一业务功能转发节点的下一跳信息。
5.根据权利要求1-3任一所述的方法,其特征在于,所述第一SI用于标识所述第一SF在所述SFP上的位置。
6.根据权利要求1-3任一所述的方法,其特征在于,所述第一下一跳信息包括所述第一SF的第六版因特网协议IPv6地址或第四版因特网协议IPv4地址。
7.根据权利要求1-3任一所述的方法,其特征在于,所述路由表项还包括参数类型,所述参数类型包括开销、带宽和权重中的一个或多个,所述参数类型用于指示所述业务功能转发节点转发报文。
8.根据权利要求1-3任一所述的方法,其特征在于,所述第一下一跳信息为所述SFP上第一SF的地址信息。
9.一种业务功能链SFC中用于转发报文的方法,其特征在于,包括:
业务功能转发节点接收控制节点发送的路由表项信息,所述路由表项信息包括第一映射关系,所述第一映射关系包括业务功能路径SFP的业务路径标识SPI、第一业务索引SI和第一下一跳信息,所述SPI用于标识所述SFP,所述第一SI在报文经过所述SFP上的一个SF处理后对应的数值减小;
所述业务功能转发节点根据所述路由表项信息转发报文。
10.根据权利要求9所述的方法,其特征在于,业务功能转发节点接收控制节点发送的路由表项信息包括:
所述控制节点接收所述业务功能转发节点发送边界网关协议BGP更新报文,所述BGP更新报文包括所述路由表项信息。
11.根据权利要求10所述的方法,其特征在于,所述BGP更新报文包括多协议扩展可达网络层可达性信息MP_REACH_NLRI属性字段,所述MP_REACH_NLRI属性字段包括所述SPI。
12.根据权利要求9-11任一所述的方法,其特征在于,所述第一SI用于标识所述第一SF在所述SFP上的位置。
13.根据权利要求9-11任一所述的方法,其特征在于,所述路由表项还包括参数类型,所述参数类型包括开销、带宽和权重中的一个或多个,所述参数类型用于指示所述业务功能转发节点转发报文。
14.根据权利要求9-11任一所述的方法,其特征在于,所述第一下一跳信息为所述SFP上第一业务功能转发节点的下一跳信息。
15.根据权利要求9-11任一所述的方法,其特征在于,所述第一下一跳信息为所述SFP上第一SF的地址信息。
16.根据权利要求9-11任一所述的方法,其特征在于,所述业务功能转发节点根据所述路由表项信息转发报文包括:
所述业务功能转发节点根据所述路由表项信息生成转发表项,所述转发表项用于指示报文的转发。
17.一种控制节点,其特征在于,包括:
确定模块,用于确定路由表项信息,所述路由表项信息包括第一映射关系,所述第一映射关系包括业务功能路径SFP的业务路径标识SPI、第一业务索引SI和第一下一跳信息,所述SPI用于标识所述SFP,所述第一SI在报文经过所述SFP上的一个SF处理后对应的数值减小;
发送模块,用于向所述SFP上的业务功能转发节点发送所述路由表项信息。
18.根据权利要求17所述的控制节点,其特征在于,所述发送模块具体用于向所述业务功能转发节点发送边界网关协议BGP更新报文,所述BGP更新报文包括所述路由表项信息。
19.根据权利要求18所述的控制节点,其特征在于,所述BGP更新报文包括多协议扩展可达网络层可达性信息MP_REACH_NLRI属性字段,所述MP_REACH_NLRI属性字段包括所述SPI。
20.根据权利要求17-19任一所述的控制节点,其特征在于,所述第一下一跳信息为所述SFP上第一业务功能转发节点的下一跳信息。
21.根据权利要求17-19任一所述的控制节点,其特征在于,所述第一SI用于标识所述第一SF在所述SFP上的位置。
22.根据权利要求17-19任一所述的控制节点,其特征在于,所述第一下一跳信息包括所述第一SF的第六版因特网协议IPv6地址或第四版因特网协议IPv4地址。
23.根据权利要求17-19任一所述的控制节点,其特征在于,所述路由表项还包括参数类型,所述参数类型包括开销、带宽和权重中的一个或多个,所述参数类型用于指示所述业务功能转发节点转发报文。
24.根据权利要求17-19任一所述的控制节点,其特征在于,所述第一下一跳信息为所述SFP上第一SF的地址信息。
25.一种业务功能转发节点,其特征在于,包括:
接收模块,用于接收控制节点发送的路由表项信息,所述路由表项信息包括第一映射关系,所述第一映射关系包括业务功能路径SFP的业务路径标识SPI、第一业务索引SI和第一下一跳信息,所述SPI用于标识所述SFP,所述第一SI在报文经过所述SFP上的一个SF处理后对应的数值减小;
处理模块,用于根据所述路由表项信息转发报文。
26.根据权利要求25所述的业务功能转发节点,其特征在于,所述接收模块具体用于:接收所述业务功能转发节点发送边界网关协议BGP更新报文,所述BGP更新报文包括所述路由表项信息。
27.根据权利要求26所述的业务功能转发节点,其特征在于,所述BGP更新报文包括多协议扩展可达网络层可达性信息MP_REACH_NLRI属性字段,所述MP_REACH_NLRI属性字段包括所述SPI。
28.根据权利要求25-27任一所述的业务功能转发节点,其特征在于,所述第一SI用于标识所述第一SF在所述SFP上的位置。
29.根据权利要求25-27任一所述的业务功能转发节点,其特征在于,所述路由表项还包括参数类型,所述参数类型包括以下参数中的一个或多个:权重、开销和带宽;
所述处理模块,还用于根据所述参数类型转发报文。
30.根据权利要求25-27任一所述的业务功能转发节点,其特征在于,所述第一下一跳信息为所述SFP上第一业务功能转发节点的下一跳信息。
31.根据权利要求25-27任一所述的业务功能转发节点,其特征在于,所述第一下一跳信息为所述SFP上第一SF的地址信息。
32.根据权利要求25-27任一所述的业务功能转发节点,其特征在于,所述处理模块具体用于:根据所述路由表项信息生成转发表项,并根据所述转发表项转发报文。
33.一种业务功能链SFC中用于转发报文的系统,其特征在于,所述系统包括如权利要求17-24任一所述的控制节点和如权利要求25-32任一所述的业务功能转发节点。
CN202010590678.5A 2016-07-01 2016-07-01 业务功能链sfc中用于转发报文的方法、装置和系统 Active CN111884934B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010590678.5A CN111884934B (zh) 2016-07-01 2016-07-01 业务功能链sfc中用于转发报文的方法、装置和系统

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
PCT/CN2016/088246 WO2018000442A1 (zh) 2016-07-01 2016-07-01 业务功能链sfc中用于转发报文的方法、装置和系统
CN201680003716.4A CN107925613B (zh) 2016-07-01 2016-07-01 业务功能链sfc中用于转发报文的方法、装置和系统
CN202010590678.5A CN111884934B (zh) 2016-07-01 2016-07-01 业务功能链sfc中用于转发报文的方法、装置和系统

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN201680003716.4A Division CN107925613B (zh) 2016-07-01 2016-07-01 业务功能链sfc中用于转发报文的方法、装置和系统

Publications (2)

Publication Number Publication Date
CN111884934A CN111884934A (zh) 2020-11-03
CN111884934B true CN111884934B (zh) 2021-07-09

Family

ID=60785930

Family Applications (3)

Application Number Title Priority Date Filing Date
CN202010590678.5A Active CN111884934B (zh) 2016-07-01 2016-07-01 业务功能链sfc中用于转发报文的方法、装置和系统
CN201680003716.4A Active CN107925613B (zh) 2016-07-01 2016-07-01 业务功能链sfc中用于转发报文的方法、装置和系统
CN202010588974.1A Active CN111884933B (zh) 2016-07-01 2016-07-01 业务功能链sfc中用于转发报文的方法、装置和系统

Family Applications After (2)

Application Number Title Priority Date Filing Date
CN201680003716.4A Active CN107925613B (zh) 2016-07-01 2016-07-01 业务功能链sfc中用于转发报文的方法、装置和系统
CN202010588974.1A Active CN111884933B (zh) 2016-07-01 2016-07-01 业务功能链sfc中用于转发报文的方法、装置和系统

Country Status (4)

Country Link
US (2) US11075839B2 (zh)
EP (1) EP3468112A4 (zh)
CN (3) CN111884934B (zh)
WO (1) WO2018000442A1 (zh)

Families Citing this family (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9225638B2 (en) 2013-05-09 2015-12-29 Vmware, Inc. Method and system for service switching using service tags
US9825810B2 (en) 2014-09-30 2017-11-21 Nicira, Inc. Method and apparatus for distributing load among a plurality of service nodes
US11496606B2 (en) 2014-09-30 2022-11-08 Nicira, Inc. Sticky service sessions in a datacenter
US10609091B2 (en) 2015-04-03 2020-03-31 Nicira, Inc. Method, apparatus, and system for implementing a content switch
US10797966B2 (en) 2017-10-29 2020-10-06 Nicira, Inc. Service operation chaining
US10797910B2 (en) 2018-01-26 2020-10-06 Nicira, Inc. Specifying and utilizing paths through a network
US10805192B2 (en) 2018-03-27 2020-10-13 Nicira, Inc. Detecting failure of layer 2 service using broadcast messages
CN110784403B (zh) * 2018-07-30 2022-07-15 中兴通讯股份有限公司 路径标识传输方法、装置和计算机可读存储介质
US11595250B2 (en) 2018-09-02 2023-02-28 Vmware, Inc. Service insertion at logical network gateway
CN111147379A (zh) * 2018-11-02 2020-05-12 中国电信股份有限公司 数据传输方法、系统和相关设备
CN111200559B (zh) * 2018-11-19 2022-05-10 中国电信股份有限公司 路由方法和路由装置
CN111314220B (zh) * 2018-12-11 2022-05-17 中国电信股份有限公司 最小化sfc时延的方法和系统
US11074097B2 (en) 2019-02-22 2021-07-27 Vmware, Inc. Specifying service chains
CN109862437B (zh) * 2019-03-20 2020-11-27 新华三技术有限公司 一种转发表项创建方法及bras
CN111857945A (zh) * 2019-04-30 2020-10-30 中兴通讯股份有限公司 数据包传输、管理方法、装置及数据转发设备、存储介质
CN110430133B (zh) * 2019-05-23 2020-06-26 北京航空航天大学 一种基于置信区间的域间路径标识前缀获取方法
US11411843B2 (en) * 2019-08-14 2022-08-09 Verizon Patent And Licensing Inc. Method and system for packet inspection in virtual network service chains
US11140218B2 (en) 2019-10-30 2021-10-05 Vmware, Inc. Distributed service chain across multiple clouds
US11283717B2 (en) 2019-10-30 2022-03-22 Vmware, Inc. Distributed fault tolerant service chain
US11223494B2 (en) 2020-01-13 2022-01-11 Vmware, Inc. Service insertion for multicast traffic at boundary
US11659061B2 (en) 2020-01-20 2023-05-23 Vmware, Inc. Method of adjusting service function chains to improve network performance
US11153406B2 (en) 2020-01-20 2021-10-19 Vmware, Inc. Method of network performance visualization of service function chains
CN112511483A (zh) * 2020-03-02 2021-03-16 中兴通讯股份有限公司 一种数据转发方法、设备和存储介质
US11277331B2 (en) 2020-04-06 2022-03-15 Vmware, Inc. Updating connection-tracking records at a network edge using flow programming
CN111740875A (zh) * 2020-05-22 2020-10-02 浪潮思科网络科技有限公司 一种业务数据转发方法、装置、设备及介质
US11621910B1 (en) * 2020-06-23 2023-04-04 Juniper Networks, Inc. Concurrent routing for network devices
CN114363183A (zh) * 2020-09-30 2022-04-15 中兴通讯股份有限公司 一种业务链地址池切片处理方法、装置及系统
CN112422426B (zh) * 2020-10-28 2022-06-28 中盈优创资讯科技有限公司 基于sr的业务处理方法及装置
CN112511432B (zh) * 2020-11-12 2022-01-25 中国科学院计算技术研究所 一种Overlay网络虚拟化SFC路由配置、传输方法及系统
CN112437008B (zh) * 2020-11-26 2022-12-13 锐捷网络股份有限公司 网络路由收敛处理和报文处理方法、装置及设备
US11611625B2 (en) 2020-12-15 2023-03-21 Vmware, Inc. Providing stateful services in a scalable manner for machines executing on host computers
US11734043B2 (en) 2020-12-15 2023-08-22 Vmware, Inc. Providing stateful services in a scalable manner for machines executing on host computers
CN113014489B (zh) * 2020-12-31 2022-02-22 腾讯科技(深圳)有限公司 数据转发方法及装置、服务器、存储介质
CN114826998B (zh) * 2021-01-29 2023-05-16 中国电信股份有限公司 基于业务功能链的报文转发方法、控制器以及存储介质
CN113660140B (zh) * 2021-08-17 2023-04-07 北京交通大学 基于数据控制平面混合感知的服务功能链故障检测方法
CN113472811B (zh) * 2021-08-23 2022-08-02 北京交通大学 一种智融标识网络中的异构服务功能链转发协议与方法
CN113904981B (zh) * 2021-09-15 2023-11-17 锐捷网络股份有限公司 一种路由信息处理方法、装置、电子设备和存储介质
WO2024016985A1 (zh) * 2022-07-20 2024-01-25 华为技术有限公司 报文处理方法、通信系统以及相关装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104954274A (zh) * 2014-03-25 2015-09-30 华为技术有限公司 生成转发信息的方法、控制器和业务转发实体
CN104980374A (zh) * 2014-04-04 2015-10-14 华为技术有限公司 一种业务路由报文的封装方法、业务转发实体及控制平面
CN105577413A (zh) * 2014-10-17 2016-05-11 中兴通讯股份有限公司 操作、管理和维护oam报文处理方法及装置
CN105681196A (zh) * 2016-01-12 2016-06-15 中国联合网络通信集团有限公司 一种业务处理的方法、转发器及分类器
WO2016094907A1 (en) * 2014-12-11 2016-06-16 Cisco Technology, Inc. Network service header metadata for load balancing

Family Cites Families (46)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7852772B2 (en) * 2005-10-20 2010-12-14 Cisco Technology, Inc. Method of implementing a backup path in an autonomous system
WO2008089305A2 (en) * 2007-01-17 2008-07-24 Nortel Networks Limited Border gateway protocol procedures for mpls and layer-2 vpn using ethernet-based tunnels
WO2008089303A1 (en) * 2007-01-17 2008-07-24 Nortel Networks Limited Border gateway protocol procedures for mpls and layer-2 vpn using ethernet-based tunnels
CN101340372B (zh) * 2008-08-21 2012-09-19 中国移动通信集团公司 号码自动路由方法、更新方法、撤销方法、路由器及设备
US8121136B2 (en) * 2009-06-24 2012-02-21 Cisco Technology, Inc. Dynamic discovery mechanisms via inter-domain routing protocol
US8611359B1 (en) * 2009-08-31 2013-12-17 Juniper Networks, Inc. Scaling MPLS across areas of an autonomous system using labeled interior border gateway protocol
CN101909005A (zh) * 2010-07-20 2010-12-08 中兴通讯股份有限公司 转发表的处理方法和装置
DE102011114377A1 (de) * 2011-09-23 2013-03-28 Carl Zeiss Microscopy Gmbh Vorrichtung und Verfahren zur Durchlichtbeleuchtung für Lichtmikroskope und Mikroskopsystem
KR101589997B1 (ko) * 2011-11-03 2016-01-29 후아웨이 테크놀러지 컴퍼니 리미티드 호스트가 가상 사설 네트워크를 결합/분리하는 경계 게이트웨이 프로토콜 확장
US9137116B1 (en) * 2012-07-12 2015-09-15 Juniper Networks, Inc. Routing protocol interface for generalized data distribution
US9106530B1 (en) * 2013-03-27 2015-08-11 Juniper Networks, Inc. Constrained route distribution for multiple virtual private network services
CN103179038B (zh) * 2013-04-19 2016-08-03 清华大学 一种使用as号的互联网路由方法及网络转发设备
US9407540B2 (en) * 2013-09-06 2016-08-02 Cisco Technology, Inc. Distributed service chaining in a network environment
US9794379B2 (en) * 2013-04-26 2017-10-17 Cisco Technology, Inc. High-efficiency service chaining with agentless service nodes
US9300585B2 (en) * 2013-11-15 2016-03-29 Cisco Technology, Inc. Shortening of service paths in service chains in a communications network
US9660897B1 (en) * 2013-12-04 2017-05-23 Juniper Networks, Inc. BGP link-state extensions for segment routing
US9825856B2 (en) * 2014-01-06 2017-11-21 Futurewei Technologies, Inc. Service function chaining in a packet network
CN104869065B (zh) 2014-02-26 2020-04-21 中兴通讯股份有限公司 数据报文处理方法及装置
CN104954245B (zh) 2014-03-27 2019-07-16 中兴通讯股份有限公司 业务功能链处理方法及装置
US9363183B2 (en) * 2014-04-10 2016-06-07 Cisco Technology, Inc. Network address translation offload to network infrastructure for service chains in a network environment
US9537752B2 (en) * 2014-07-14 2017-01-03 Cisco Technology, Inc. Encoding inter-domain shared service paths
US10003530B2 (en) * 2014-07-22 2018-06-19 Futurewei Technologies, Inc. Service chain header and metadata transport
CN105577579B (zh) * 2014-10-17 2020-09-01 中兴通讯股份有限公司 业务功能链中协议报文的处理方法、系统及业务功能节点
US20160119253A1 (en) * 2014-10-23 2016-04-28 Kt Corporation Method and system of performing service function chaining
US9548919B2 (en) * 2014-10-24 2017-01-17 Cisco Technology, Inc. Transparent network service header path proxies
US9531850B2 (en) * 2014-12-04 2016-12-27 Cisco Technology, Inc. Inter-domain service function chaining
US9979645B2 (en) * 2015-01-14 2018-05-22 Futurewei Technologies, Inc. Hardware and software methodologies for creating and managing portable service function chains
CN104639414B (zh) * 2015-01-30 2018-05-08 新华三技术有限公司 一种报文转发方法和设备
CN106664252B (zh) * 2015-06-10 2019-11-29 华为技术有限公司 实现业务链接的方法、设备及系统
CN106330714B (zh) * 2015-07-02 2020-05-29 中兴通讯股份有限公司 一种实现业务功能链的方法和装置
US10103976B2 (en) * 2015-07-09 2018-10-16 Cisco Technology, Inc. Service bitmask-based service application in service function chaining
US9723106B2 (en) * 2015-08-28 2017-08-01 Cisco Technology, Inc. Service function chaining branching
US9774504B2 (en) * 2015-09-30 2017-09-26 Telefonaktiebolaget Lm Ericsson (Publ) Route refresh mechanism for border gateway protocol link state
US10116553B1 (en) * 2015-10-15 2018-10-30 Cisco Technology, Inc. Application identifier in service function chain metadata
US10959065B2 (en) * 2016-01-22 2021-03-23 Telefonaktiebolaget Lm Ericsson (Publ) Charging for services in telecommunications networks
US10164875B2 (en) * 2016-02-22 2018-12-25 Cisco Technology, Inc. SR app-segment integration with service function chaining (SFC) header metadata
US20170257310A1 (en) * 2016-03-02 2017-09-07 Cisco Technology, Inc. Network service header (nsh) relaying of serviceability of a service function
US9954774B2 (en) * 2016-03-10 2018-04-24 Cisco Technology, Inc. Propagating flow characteristics in service function chaining (SFC) headers
US10187306B2 (en) * 2016-03-24 2019-01-22 Cisco Technology, Inc. System and method for improved service chaining
EP3437269B1 (en) * 2016-03-28 2019-10-02 Telefonaktiebolaget LM Ericsson (PUBL) Efficient method to aggregate changes and to produce border gateway protocol link-state (bgp-ls) content from intermediate system to intermediate system (is-is) link-state database
US10756945B2 (en) * 2016-05-11 2020-08-25 Cisco Technology, Inc. Virtualized network management protocols
US10382325B2 (en) * 2016-08-26 2019-08-13 Telefonaktiebolaget Lm Ericsson (Publ) Improving service function proxy performance in software defined networking networks
US11277338B2 (en) * 2016-09-26 2022-03-15 Juniper Networks, Inc. Distributing service function chain data and service function instance data in a network
US10454821B2 (en) * 2016-10-14 2019-10-22 Cisco Technology, Inc. Creating and maintaining segment routed traffic engineering policies via border gateway protocol
EP3552370B1 (en) * 2016-12-09 2021-08-18 British Telecommunications Public Limited Company Implementing service function chains
US11463399B2 (en) * 2018-12-15 2022-10-04 Telefonaktiebolaget Lm Ericsson (Publ) Efficient network address translation (NAT) in cloud networks

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104954274A (zh) * 2014-03-25 2015-09-30 华为技术有限公司 生成转发信息的方法、控制器和业务转发实体
CN104980374A (zh) * 2014-04-04 2015-10-14 华为技术有限公司 一种业务路由报文的封装方法、业务转发实体及控制平面
CN105577413A (zh) * 2014-10-17 2016-05-11 中兴通讯股份有限公司 操作、管理和维护oam报文处理方法及装置
WO2016094907A1 (en) * 2014-12-11 2016-06-16 Cisco Technology, Inc. Network service header metadata for load balancing
CN105681196A (zh) * 2016-01-12 2016-06-15 中国联合网络通信集团有限公司 一种业务处理的方法、转发器及分类器

Also Published As

Publication number Publication date
US20210336882A1 (en) 2021-10-28
CN111884933B (zh) 2021-07-09
US11671364B2 (en) 2023-06-06
CN107925613A (zh) 2018-04-17
CN111884934A (zh) 2020-11-03
US20190140950A1 (en) 2019-05-09
CN107925613B (zh) 2020-07-07
WO2018000442A1 (zh) 2018-01-04
EP3468112A4 (en) 2019-05-08
US11075839B2 (en) 2021-07-27
CN111884933A (zh) 2020-11-03
EP3468112A1 (en) 2019-04-10

Similar Documents

Publication Publication Date Title
CN111884934B (zh) 业务功能链sfc中用于转发报文的方法、装置和系统
CN107925624B (zh) 基于业务功能链sfc的报文转发方法、装置和系统
EP4102785A1 (en) Message processing method and apparatus, and network device and storage medium
CN111865898B (zh) 基于流规则协议的通信方法、设备和系统
US7817637B2 (en) Network switching system
US20200396162A1 (en) Service function chain sfc-based communication method, and apparatus
CN106059924B (zh) 一种管理信息的方法,装置及系统
EP3054634B1 (en) Scheme for performing one-pass tunnel forwarding function on two-layer network structure
CN108429680B (zh) 一种基于虚拟私有云的路由配置方法、系统、介质及设备
EP3364613B1 (en) Method and device for transmitting traffic via specified path
KR101457317B1 (ko) 라우팅 정보 업데이트의 우선 순위 지정
CN111698162A (zh) 一种信息同步的方法,装置及系统
CN108667709B (zh) 一种报文转发方法及装置
CN105262686B (zh) 一种网络连通性验证方法和装置
KR20230017324A (ko) Bier 멀티캐스트 트래픽 통계 수집 방법, 디바이스 및 시스템
KR20230128564A (ko) 패킷 처리 방법 및 관련 장치
CN117749700A (zh) 对应关系的获取方法、参数通告方法、装置、设备及介质
CN118075186A (zh) 用于sd-wan的通信方法、报文处理方法及网络设备

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