CN105745874B - 一种确定服务功能路径的方法及装置 - Google Patents
一种确定服务功能路径的方法及装置 Download PDFInfo
- Publication number
- CN105745874B CN105745874B CN201480022265.XA CN201480022265A CN105745874B CN 105745874 B CN105745874 B CN 105745874B CN 201480022265 A CN201480022265 A CN 201480022265A CN 105745874 B CN105745874 B CN 105745874B
- Authority
- CN
- China
- Prior art keywords
- service function
- data
- packet
- data stream
- information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
公开一种确定服务功能路径的方法及装置。其中,确定服务功能路径的方法可以包括:服务功能路径生成装置获取数据流数据包和所述数据流数据包的服务功能链的信息,所述服务功能链的信息包括所述数据流数据包所需经过的服务功能的标识;所述服务功能路径生成装置根据所述服务功能链的信息,确定所述数据流数据包的服务功能路径。通过本公开,能够减少确定服务功能路径过程中的控制信令。
Description
技术领域
本发明涉及通信技术领域,特别涉及一种确定服务功能路径的方法及装置。
背景技术
在固定或移动宽带接入领域及数据中心应用中,会存在很多基于4层到7层的服务功能,包括防病毒、防火墙、应用缓存和加速、Web优化、NAT(Network AddressTranslation,网络地址转换)、家庭控制等服务功能。
在现有常用组网中往往在固定或移动用户接入设备后面串接服务功能处理设备,如图1所示,其中用户接入设备可以是移动宽带的GGSN(Gateway General Packet RadioService Support Node,网关通用分组无线服务支持节点)/P-GW(Packet data networkGateWay,分组数据网网关)或固定接入的BNG(Broadband Network Gateway,宽带网络网关控制设备)或数据中心中的ToR(The Onion Router,洋葱路由器)。在实际应用中,可能部分用户的数据流需要进行防病毒处理,部分用户的数据流需要进行NAT,部分用户数据流(如:仅视频或Web访问数据流)需要进行应用缓存和加速。但在图1所示组网技术中,所有用户的数据流都需要流经串接的多个服务功能处理设备,不管这些数据流是否需要进行相应的服务功能处理。
可见,图1的组网技术方案导致本来不需要经过服务功能设备的数据流都需要经过每个服务功能处理设备,对服务功能处理设备的处理容量需求变大,增加了不必要的网络设备投资,同时导致了组网中故障点的增加,某个服务功能处理设备故障可能会导致整体数据流中断或故障。
为解决串接多个服务功能组网时,本来不需要流经服务功能设备的数据流都需要经过每个服务功能处理设备而带来的问题,业界提出了一种服务功能链的概念,将某个数据流所需经过的服务功能以及所需经过的服务功能的顺序定义为服务功能链,例如:(防病毒,防火墙,NAT地址转换)、(应用缓存和加速,防火墙,NAT地址转换)和(防火墙,NAT地址转换,防病毒)分别属于不同的服务功能链,从而根据服务功能链,可以将数据流发送到该数据流对应需要经过的服务功能处理设备。
如图2所示的网络构架中,包括控制器、分类器、交换机以及服务功能(ServiceFunction)的实例,该服务功能的实例是指对数据流执行服务功能时对该数据流进行相应处理的设备,例如服务功能处理设备。实际应用中,为了处理大量的数据流,每个服务功能可以有多个实例能够执行该服务功能,例如如图2所示的服务功能1中可以包含A、B两个实例,服务功能2中包含有C、D、E、三个实例。因而在实际的数据流传输过程中,同一个服务功能链可以对应到多种服务功能路径,例如当服务功能链为(服务功能1,服务功能2)时,对应的服务功能路径可以是(服务功能1-实例A,服务功能2-实例C),还可以是(服务功能1-实例B,服务功能2-实例E)等。然而,现在技术中,控制器与分类器需要经过多次信令交互才能确定服务功能路径。
发明内容
本发明的实施例中提供了一种确定服务功能路径的方法及装置,能够减少确定服务功能路径过程中的控制信令。
为了解决上述技术问题,本发明实施例公开了如下技术方案:
第一方面,提供一种确定服务功能路径的方法,包括:服务功能路径生成装置获取数据流数据包和所述数据流数据包的服务功能链的信息,所述服务功能链的信息包括所述数据流数据包所需经过的服务功能的标识;
所述服务功能路径生成装置根据所述服务功能链信息,确定所述数据流数据包的服务功能路径。
结合上述第一方面,在第一种可能的实现方式中,所述服务功能路径生成装置获取数据流数据包和所述数据流数据包的服务功能链的信息,包括:
所述服务功能路径生成装置接收服务功能链选择装置发送的所述数据流数据包和所述服务功能链的信息。
结合上述第一方面,在第二种可能的实现方式中,所述服务功能路径生成装置获取数据流数据包和所述数据流数据包的服务功能链的信息,包括:
所述服务功能路径生成装置接收所述数据流数据包;
所述服务功能路径生成装置获取所述数据流数据包的所述服务功能链的信息。
结合上述第一方面,和第二种可能的实现方式中,在第三种可能的实现方式中,所述服务功能路径生成装置获取所述数据流数据包的所述服务功能链的信息,包括:
所述服务功能路径生成装置根据服务功能选择策略,确定所述服务功能链的信息;
或者,所述服务功能路径生成装置接收所述服务功能链的信息。
结合上述第一方面,和第三种可能的实现方式中,在第四种可能的实现方式中,所述服务功能选择策略是通过PCC规则或者ADC规则确定的。
结合上述第一方面,和第一至第四种可能的实现方式中,在第五种可能的实现方式中,所述服务功能路径生成装置根据所述服务功能链的信息确定所述数据流数据包的服务功能路径包括:
所述服务功能路径生成装置根据实例选择参数和实例选择算法中的至少一种以及所述服务功能链的信息确定所述服务功能路径。
结合上述第一方面,和第五种可能的实现方式中,在第六种可能的实现方式中,
所述数据流数据包携带网络拓扑结构状态信息;所述服务功能路径生成装置根据实例选择参数和实例选择算法中的至少一种以及所述服务功能链的信息确定所述服务功能路径包括:
所述服务功能路径生成装置根据所述网络拓扑结构,确定所述网络拓扑结构对应的所述实例选择算法;
所述服务功能路径生成装置根据所述服务功能链的信息、所述实例选择参数和所述网络拓扑结构对应的所述实例选择算法,确定所述数据流数据包的服务功能中的实例。
结合上述第一方面,和第五、第六种可能的实现方式中,在第七种可能的实现方式中,所述实例选择参数包括所述数据流数据包的服务功能中各实例的负荷权重。
结合上述第一方面,和第五、第六种可能的实现方式中,在第八种可能的实现方式中,所述实例选择算法为基于IMSI的哈希算法、基于IP五元组的哈希算法和基于IMSI与服务功能链标识的哈希算法中的任一种。
结合上述第一方面,和第一至第八种可能的实现方式中,在第九种可能的实现方式中,所述数据流数据包携带数据流标识,所述方法还包括:
所述服务功能路径生成装置保存所述数据流标识与所述服务功能路径的对应关系。
结合上述第一方面,和第九种可能的实现方式中,在第十种可能的实现方式中,所述服务功能路径生成装置保存所述数据流标识与所述服务功能路径的对应关系包括:
所述服务功能路径生成装置在所述数据流数据包携带开始标识时,保存所述数据流标识与所述服务功能路径的对应关系,所述开始标识用于指示所述数据流数据包处于数据流的开始阶段。
结合上述第一方面,和第九、第十种可能的实现方式中,在第十一种可能的实现方式中,还包括:
所述服务功能路径生成装置接收数据流中间数据包,所述数据流中间数据包携带所述数据流标识;
所述服务功能路径生成装置根据所述保存的所述数据流标识与所述服务功能路径的对应关系,确定所述数据流中间数据包的所述服务功能路径。
结合上述第一方面,和第九至第十一种可能的实现方式中,在第十二种可能的实现方式中,还包括:
所述服务功能路径生成装置接收数据流结束数据包,所述数据流结束数据包携带所述数据流标识和结束标识,所述结束标识用于指示所述数据流结束数据包处于数据流的结束阶段;
所述服务功能路径生成装置删除所述保存的所述数据流标识与所述服务功能路径的对应关系。
结合上述第一方面,和第一至第十二种可能的实现方式中,在第十三种可能的实现方式中,所述服务功能路径生成装置为交换机、PCEF或TDF。
结合上述第一方面,和第一至第十二种可能的实现方式中,在第十四种可能的实现方式中,还包括:
所述服务功能路径生成装置将所述服务功能路径发送给交换机。
结合上述第一方面,和第一至第十四种可能的实现方式中,在第十五种可能的实现方式中,所述数据流数据包所需经过的服务功能的标识为所述数据流数据包所需经过的服务功能的字符串、所述数据流数据包所需经过的服务功能的实例组列表和表示所述数据流数据包所需经过的服务功能的数字标签中的任一种形式。
第二方面,提供一种确定服务功能路径的方法,包括:
服务功能链选择装置接收数据流数据包;
所述服务功能链选择装置获取所述数据流数据包的服务功能链的信息,所述服务功能链的信息包括所述数据流数据包所需经过的服务功能的标识;
所述服务功能链选择装置向所述服务功能路径生成装置发送所述数据流数据包和所述服务功能链的信息,以便所述服务功能路径生成装置根据所述服务功能链的信息,确定所述数据流数据包的服务功能路径。
结合上述第二方面,在第一种可能的实现方式中,所述服务功能链选择装置获取所述数据流数据包的服务功能链的信息包括:
所述服务功能链选择装置根据服务功能选择策略,确定所述服务功能链的信息;
或者,所述服务功能链选择装置接收所述数据流数据包的服务功能链的信息。
结合上述第二方面,和第一种可能的实现方式,在第二种可能的实现方式中,所述服务功能选择策略是通过PCC规则或者ADC规则确定的。
结合上述第二方面,和第一至第二种可能的实现方式,在第三种可能的实现方式中,还包括:
当所述数据流数据包处于数据流的开始阶段时,所述服务功能链选择装置在所述数据流数据包中携带开始标识。
结合上述第二方面,和第一至第二种可能的实现方式,在第四种可能的实现方式中,还包括:
当所述数据流数据包处于数据流的结束阶段时,所述服务功能链选择装置在所述数据流数据包中携带结束标识。
结合上述第二方面,和第一至第四种可能的实现方式,在第五种可能的实现方式中,还包括:
所述服务功能链选择装置接收网络拓扑结构状态指示;
所述服务功能链选择装置根据所述网络拓扑结构状态指示,在所述数据流数据包中设置网络拓扑结构状态信息。
结合上述第二方面,和第一至第五种可能的实现方式,在第六种可能的实现方式中,所述服务功能链选择装置为PCEF或TDF。
结合上述第二方面,和第一至第六种可能的实现方式,在第七种可能的实现方式中,所述数据流数据包所需经过的服务功能的标识为所述数据流数据包所需经过的服务功能的字符串、所述数据流数据包所需经过的服务功能的实例组列表和表示所述数据流数据包所需经过的服务功能的数字标签中的任一种形式。
第三方面,提供一种服务功能路径生成装置,包括:
数据及信息获取模块,用于获取数据流数据包和所述数据流数据包的服务功能链的信息,所述服务功能链的信息包括所述数据流数据包所需经过的服务功能的标识;
服务功能路径确定模块,用于根据所述服务功能链信息,确定所述数据流数据包的服务功能路径。
结合上述第三方面,在第一种可能的实现方式中,所述数据及信息获取模块,具体用于接收服务功能链选择装置发送的所述数据流数据包和所述服务功能链的信息。
结合上述第三方面,在第二种可能的实现方式中,所述数据及信息获取模块,具体用于接收所述数据流数据包;获取所述数据流数据包的所述服务功能链的信息。
结合上述第三方面,和第二种可能的实现方式中,在第三种可能的实现方式中,所述数据及信息获取模块,具体用于根据服务功能选择策略,确定所述服务功能链的信息;或者,接收所述服务功能链的信息。
结合上述第三方面,和第三种可能的实现方式中,在第四种可能的实现方式中,所述服务功能选择策略是通过PCC规则或者ADC规则确定的。
结合上述第三方面,和第一至第四种可能的实现方式中,在第五种可能的实现方式中,所述服务功能路径确定模块,具体用于根据实例选择参数和实例选择算法中的至少一种以及所述服务功能链的信息确定所述服务功能路径。
结合上述第三方面,和第五种可能的实现方式中,在第六种可能的实现方式中,所述数据流数据包携带网络拓扑结构状态信息;所述服务功能路径确定模块,具体用于根据所述网络拓扑结构,确定所述网络拓扑结构对应的所述实例选择算法;根据所述服务功能链的信息、所述实例选择参数和所述网络拓扑结构对应的所述实例选择算法,确定所述数据流数据包的服务功能中的实例。
结合上述第三方面,和第五、第六种可能的实现方式中,在第七种可能的实现方式中,所述实例选择参数包括所述数据流数据包的服务功能中各实例的负荷权重。
结合上述第三方面,和第五、第六种可能的实现方式中,在第八种可能的实现方式中,所述实例选择算法为基于IMSI的哈希算法、基于IP五元组的哈希算法和基于IMSI与服务功能链标识的哈希算法中的任一种。
结合上述第三方面,和第一至第八种可能的实现方式中,在第九种可能的实现方式中,所述数据流数据包携带数据流标识,还包括:
关系存储模块,用于保存数据流标识与所述服务功能路径的对应关系,所述数据流数据包携带所述数据流标识。
结合上述第三方面,和第九种可能的实现方式中,在第十种可能的实现方式中,所述关系存储模块,具体用于,在所述数据流数据包携带开始标识时,保存所述数据流标识与所述服务功能路径的对应关系,所述开始标识用于指示所述数据流数据包处于数据流的开始阶段。
结合上述第三方面,和第九、第十种可能的实现方式中,在第十一种可能的实现方式中,所述数据及信息获取模块还用于接收数据流中间数据包,所述数据流中间数据包携带所述数据流标识时;则所述服务功能路径确定模块具体用于根据所述数据及信息获取模块保存的所述数据流标识与所述服务功能路径的对应关系,确定所述数据流中间数据包的所述服务功能路径。
结合上述第三方面,和第九至第十一种可能的实现方式中,在第十二种可能的实现方式中,还包括:
关系删除模块,用于在所述数据及信息获取模块接收数据流结束数据包时,删除所述保存的所述数据流标识与所述服务功能路径的对应关系;其中,所述数据流结束数据包携带所述数据流标识和结束标识,所述结束标识用于指示所述数据流结束数据包处于数据流的结束阶段。
结合上述第三方面,和第一至第十二种可能的实现方式中,在第十三种可能的实现方式中,所述服务功能路径生成装置为交换机、PCEF或TDF。
结合上述第三方面,和第一至第十二种可能的实现方式中,在第十四种可能的实现方式中,还包括:转发模块,用于将所述服务功能路径发送给交换机。
结合上述第三方面,和第一至第十四种可能的实现方式中,在第十五种可能的实现方式中,所述数据流数据包所需经过的服务功能的标识为所述数据流数据包所需经过的服务功能的字符串、所述数据流数据包所需经过的服务功能的实例组列表和表示所述数据流数据包所需经过的服务功能的数字标签中的任一种形式。
第四方面,提供一种服务功能链选择装置,包括:
数据包接收模块,用于接收数据流数据包;
服务功能链信息获取模块,用于获取所述数据流数据包的服务功能链的信息,所述服务功能链的信息包括所述数据流数据包所需经过的服务功能的标识;
数据及信息发送模块,用于向所述服务功能路径生成装置发送所述数据流数据包和所述服务功能链的信息,以便所述服务功能路径生成装置根据所述服务功能链的信息,确定所述数据流数据包的服务功能路径。
结合上述第四方面,在第一种可能的实现方式中,所述服务功能链选择装置获取所述数据流数据包的服务功能链的信息包括:
所述服务功能链选择装置根据服务功能选择策略,确定所述服务功能链的信息;
或者,所述服务功能链选择装置接收所述数据流数据包的服务功能链的信息。
结合上述第四方面,和第一种可能的实现方式,在第二种可能的实现方式中,所述服务功能选择策略是通过PCC规则或者ADC规则确定的。
结合上述第四方面,和第一至第二种可能的实现方式,在第三种可能的实现方式中,还包括:
开始标识设置模块,用于当所述数据流数据包处于数据流的开始阶段时,所述服务功能链选择装置在所述数据流数据包中携带开始标识。
结合上述第四方面,和第一至第二种可能的实现方式,在第四种可能的实现方式中,还包括:
结束标识设置模块,用于当所述数据流数据包处于数据流的结束阶段时,所述服务功能链选择装置在所述数据流数据包中携带结束标识。
结合上述第四方面,和第一至第四种可能的实现方式,在第五种可能的实现方式中,还包括:拓扑指示接收模块,用于接收网络拓扑结构状态指示;
拓扑信息设置模块,用于根据所述网络拓扑结构状态指示,在所述数据流数据包中设置网络拓扑结构状态信息。
结合上述第四方面,和第一至第五种可能的实现方式,在第六种可能的实现方式中,所述服务功能链选择装置为PCEF或TDF。
结合上述第四方面,和第一至第六种可能的实现方式,在第七种可能的实现方式中,所述数据流数据包所需经过的服务功能的标识为所述数据流数据包所需经过的服务功能的字符串、所述数据流数据包所需经过的服务功能的实例组列表和表示所述数据流数据包所需经过的服务功能的数字标签中的任一种形式。
第五方面,提供一种服务功能路径生成装置,包括:包括处理器、存储器、总线和通信接口;
所述存储器用于存储计算机执行指令,所述处理器与所述存储器通过所述总线连接,当所述服务功能路径生成装置运行时,所述处理器执行所述存储器存储的所述计算机执行指令,以使所述服务功能路径生成装置执行前述第一方面中确定服务功能路径的方法。
第六方面,提供一种服务功能链选择装置,包括:包括处理器、存储器、总线和通信接口;
所述存储器用于存储计算机执行指令,所述处理器与所述存储器通过所述总线连接,当所述服务功能链选择装置运行时,所述处理器执行所述存储器存储的所述计算机执行指令,以使所述服务功能链选择装置执行前述第二方面中确定服务功能路径的方法。
第七方面,提供一种计算机可读介质,包括计算机执行指令,以供计算机的处理器执行所述计算机执行指令时,所述计算机执行前述第一方面中确定服务功能路径的方法。
第八方面,提供一种计算机可读介质,包括计算机执行指令,以供计算机的处理器执行所述计算机执行指令时,所述计算机执行前述第二方面中确定服务功能路径的方法。
本发明实施例中,服务功能路径生成装置获取数据流数据包和所述数据流数据包的服务功能链的信息,服务功能链的信息中包括所述数据流数据包所需经过的服务功能的标识,所述服务功能路径生成装置能够根据该服务功能链的信息,确定数据流数据包的服务功能路径。可见,在确定服务功能路径的过程中,可以由服务功能路径生成装置直接确定数据流数据包的服务功能路径,无需进行多次控制信令交互,使得确定服务功能路径过程中的控制信令大大减少。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1所示为串接增值数据设备的示意图;
图2所示为网络架构示意图;
图3所示为本发明提供的一种确定服务功能路径的方法实施例流程图;
图4所示为本发明实施例中,当网络拓扑发生变化时,确定服务功能路径的方法流程图;
图5所示为本发明实施例提供的又一种确定服务功能路径的流程图;
图6所示为本发明实施例中,当网络拓扑发生变化时,确定服务功能路径的方法流程图;
图7所示为本发明实施例中变化之前的网络架构示意图;
图8所示为本发明实施例中变化之后的网络架构示意图;
图9所示为本发明实施例中,数据流首次发起的场景下,确定服务功能路径的流程图;
图10所示为本发明实施例中,数据流中间传输阶段的场景下,确定服务功能路径的流程图;
图11所示为本发明实施例中,数据流技术阶段的场景下,确定服务功能路径的流程图;
图12所示为本发明实施例中,网络拓扑发生变化的场景下,确定服务功能路径的流程图;
图13所示为本发明实施例中一种服务功能路径生成装置的结构示意图;
图14所示为本发明实施例中另一种服务功能路径生成装置的结构示意图;
图15所示为本发明实施例中一种服务功能链选择装置的结构示意图;
图16所示为本发明实施例中另一种服务功能链选择装置的结构示意图;
图17所示为本发明实施例中另一种服务功能路径生成装置的结构示意图;
图18所示为本发明实施例中另一种服务功能链选择装置的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明实施例中的技术方案,并使本发明实施例的上述目的、特征和优点能够更加明显易懂,下面结合附图对本发明实施例中技术方案作进一步详细的说明。
首先,对本发明实施例所涉及到的装置进行简单说明。服务功能链生成装置,负责生成服务功能链,在通信网中可以是策略与计费规则功能单元(Policy and ChargingRules Function,PCRF)、流量检测功能(Traffic Detection Function,TDF)、策略及计费执行功能(Policy and Charging Enforcement Function,PCEF)或者控制器等设备;本发明实施例中,数据流数据包的服务功能链可以根据网络信息、用户的签约信息、数据流的标识或者该数据流对应的应用类型等确定,数据流数据包仅须按照服务功能链规定的所需经过的服务功能的顺序路由即可。
服务功能链选择装置,为数据流选择服务功能数据链,在通信网中可以是PCRF、TDF、PCEF或者控制器等设备;
服务功能链控制执行装置,负责按照所选择的服务功能链路由数据流数据包,在通信网中可以是PCRF或者控制器等设备;
服务功能路径生成装置,负责生成服务路径,在通信网中也可以是TDF、交换机等设备。
上述装置可以是一个独立的设备,也可以与通信网中的其它的设备集成在一起。
本发明实施例中,服务功能链(Service Function Chain)即某个数据流数据包所需经过的服务功能以及所需经过的服务功能的顺序,如:(防病毒,防火墙,NAT地址转换)、(应用缓存和加速,防火墙,NAT地址转换)和(防火墙,NAT地址转换,防病毒)分别属于不同的服务功能链。服务功能路径(Service Function Path)即某个数据流数据包所需经过的服务功能链的实例以及所需经过的服务功能链的实例的顺序。关于服务功能链和服务功能路径的定义也可以参考IETF草案“Network Service Headerdraft-quinn-sfc-nsh-03”。
如图3所示,为本发明提供的一种确定服务功能路径的方法实施例,该方法可以包括以下执行步骤:
步骤301、服务功能路径生成装置获取数据流数据包和所述数据流数据包的服务功能链的信息,所述服务功能链的信息包括所述数据流数据包所需经过的服务功能的标识。
步骤302、所述服务功能路径生成装置根据所述服务功能链的信息,确定所述数据流数据包的服务功能路径。
所述服务功能路径可以包括所述数据流数据包所需经过的服务功能的实例的网络属性信息和所述数据流数据包所需经过的服务功能的实例的顺序;或者,所述服务功能路径可以包括所述数据流数据包所需经过的服务功能的实例的标识和所述数据流数据包所需经过的服务功能的实例的顺序,本发明实施例在此不作限定,可以根据服务功能路径将所述数据流数据包路由/转发到相应的服务功能的实例即可。其中,实例的网络属性信息包括服务功能内各实例在所处网络的各种路由/转发标识等属性信息,例如:IP地址、端口号信息等。为了描述方便,将所述信息称为网络属性信息。
上述步骤301中,可以由服务功能链选择装置确定所述数据流数据包的所述服务功能链的信息,所述服务功能链选择装置可以将所述服务功能链的信息携带于所述数据包中发送给所述服务功路径生成装置,也可以将所述服务功能链的信息和所述数据包分别发送给所述服务功能路径生成装置。则所述服务功路径生成装置可以接收所述服务功能链选择装置发送的所述数据流数据包和所述服务功能链的信息。
需要说明的是,服务功能路径生成装置和服务功能链选择装置还可以设置为同一装置,此时所述服务功能路径生成装置可以接收所述数据流数据包,并获取所述数据流数据包的所述服务功能链的信息,例如,服务功能路径生成装置可以根据服务功能选择策略,确定所述服务功能链的信息;或者,由服务功能路径生成装置可以接收PCRF发送的服务功能链的信息。
其中,服务功能选择策略是指数据流的处理策略,该服务功能选择策略可以从激活的策略与计费控制(Policy and Charging Control,PCC)规则或应用探测与控制(Application Detection and Control,ADC)规则中获取。例如:某用户签约了防病毒服务功能,且对于视频数据流签约了压缩处理服务功能,其中,防病毒与压缩处理都属于服务功能选择策略。当服务功能路径生成装置接收到这些策略后,即可根据各种处理功能的特点与顺序,确定具体的服务功能链。当确定服务功能链之后,基于服务功能链的分类原则,将数据包按照数据流标识进行分类,并将获取的对应该数据流的业务类型的服务功能链标识加入到数据包头中,以便于服务功能路径生成装置能够根据该服务功能链标识采用相应的路由策略。例如,如果服务功能链是基于业务类型分类,则需要根据数据流标识解析业务类型,并且在不同的业务类型的数据包中设置该业务类型对应的服务功能链标识;如果服务功能链是基于五元组信息分类的,则基于五元组信息将数据流分类,并在该数据流的数据包中设置对应的服务功能链标识。
上述步骤302中,服务功能路径生成装置获取到服务功能链的信息之后,即可根据该服务功能链的信息,确定数据流数据包的服务功能路径。
实际应用场景中,服务功能路径生成装置可以为交换机、PCEF或TDF。具体地,服务功能路径生成装置可以设置为独立于交换机的功能实体,也可以与交换机集成为一体,对此,本发明实施例并不做具体限定。当服务功能路径生成装置采用与交换机集成为一体的设置形式时,服务功能路径生成装置可以直接按照服务功能路径路由\转发该数据流数据包至对应的服务功能的实例,以进行相应的处理。而当服务功能路径生成装置设置为独立于交换机的功能实体时,服务功能路径生成装置在确定数据流数据包的服务功能路径之后,还可以将服务功能路径发送至交换机,由交换机按照服务功能路径路由\转发该数据流数据包至对应的服务功能实例。
可选地,所述数据流数据包所需经过的服务功能的标识表现形式,可以包括:所述数据流数据包所需经过的服务功能的字符串、所述数据流数据包所需经过的服务功能的实例组列表和表示所述数据流数据包所需经过的服务功能的数字标签等形式。
例如,当采用所述数据流数据包所需经过的服务功能的字符串的表现形式时,所述数据流数据包所需经过的服务功能的标识可以为防病毒、防火墙和NAT地址转换等字符串,此时服务功能链的信息可以为:(防病毒,防火墙,NAT地址转换)。
当采用表示所述数据流数据包所需经过的服务功能的数字标签的表现形式时,服务功能链的信息可以是与服务功能链对应的数字字符序号。例如:有十条服务功能链,采用1,2,3......10这样的数字字符序号来表示各服务功能链,此时,服务功能链的信息可以是1或2等数字字符序号。
此外,各类服务功能均可以包含多个实例以便负荷分担,由此,可以将各类服务功能认为是一组实例的集合,从而所述数据流数据包所需经过的服务功能的标识可以采用实例组列表的形式进行表示,例如:服务功能1采用Group1表示。因此,服务功能链的信息也可以是采用类似【Group1(防病毒),Group2(防水墙),Group4(NAT地址转换)】这样的服务功能实例组列表的表示形式。
本发明实施例中,服务功能路径生成装置获取数据流数据包和所述数据流数据包的服务功能链的信息,服务功能链的信息中包括所述数据流数据包所需经过的服务功能的标识,所述服务功能路径生成装置能够根据该服务功能链的信息,确定数据流数据包的服务功能路径。可见,在确定服务功能路径的过程中,可以由服务功能路径生成装置直接确定数据流数据包的服务功能路径,无需进行多次控制信令交互,使得确定服务功能路径过程中的控制信令大大减少。
进一步,由于在数据流数据包传输过程中,可能造成某个服务功能中某个或某几个实例负荷较重,而其它的设备轻负荷,甚至闲置没有数据流。如何使每个服务功能中的实例按照负荷比例实现负荷分担是一个要解决的问题。
具体地,以图2所示网络架构为例,每个服务功能中通常包含有多台服务功能处理设备(即实例)以便处理大量的数据流,例如服务功能1中包含A和B两个实例,服务功能2中包含有C、D、E三台服务功能实例,服务功能3中包含有F、G、H、I四台服务功能实例。在实际的数据流传输过程中,同一个服务功能链可以对应到多种服务功能路径,例如:服务功能链是(服务功能1,服务功能2,服务功能3),但是实际的服务功能路径可能有多种,包括:(服务功能1-A,服务功能2-C,服务功能3-F);(服务功能1-B,服务功能2-C,服务功能3-F);(服务功能1-A,服务功能2-D,服务功能3-H)等路由路径。因此,所述服务功能路径生成装置在确定数据流数据包的服务功能路径时,除了需要该数据流数据包的服务功能链的信息,还可以考虑服务功能中各实例的负荷分担情况,从而可以根据数据流数据包所需经过的服务功能中各实例的负荷分担情况,来确定服务功能路径。
所述服务功能路径生成装置可以根据实例选择参数和实例选择算法中的至少一种,以及所述服务功能链的信息确定所述数据流数据包的服务功能路径,例如所述服务功能路径生成装置可以根据获取到的服务功能链的信息,确定所述数据流数据包所需经过的服务功能和所述数据流数据包所需经过的服务功能的顺序,再根据实例选择参数和/或实例选择算法,可以进一步确定所述数据流数据包所需经过的服务功能的实例和所述数据流数据包所需经过的服务功能的实例的顺序,即确定服务功能路径。其中,实例选择参数和/或实例选择算法与服务功能中各实例的负荷有关,例如,实例选择参数可以包括数据流数据包所需经过的服务功能中各实例的负荷权重,所述服务功能路径生成装置可以根据实例选择参数以及所述服务功能链的信息确定所述数据流数据包的服务功能路径;或者,所述服务功能路径生成装置在确定服务功能实例选择算法时,可以根据各个实例负荷分担的比例,确定数据流数据包的分配方式,例如:如果某一个服务功能包括两个服务功能实例,两实例的负荷分担比例为2∶3,由此,服务功能路径生成装置通过确定服务功能实例选择规则算法,实现将数据流按照2∶3的比例相对均衡地分布在两个服务功能实例上。具体地,服务功能路径生成装置可以对数据流的五元组信息执行哈希算法,此处,哈希算法即为服务功能实例选择规则算法的一种实现形式,根据该哈希算法,服务功能路径生成装置会按照各服务功能实例的负荷分担比例将数据流分发到各个服务功能实例。本发明实施例中,具体哈希算法不限制,例如:可以根据国际移动用户识别码(International MobileSubscriber Identity,IMSI)执行哈希算法,将用户按照相应的负荷分担比分配在相应服务功能实例上;或者,基于IMSI与服务功能链标识执行哈希算法,将用户以及相应的服务功能链按照相应的负荷分担比例分配到相应服务功能实例。
可选地,所述数据流数据包还可以携带数据流标识,所述服务功能路径生成装置在确定所述数据流数据包的服务功能路径之后,还可以保存所述数据流标识与所述服务功能路径的对应关系,从而在接收到携带相同数据流标识的数据流数据包(即同一个数据流中的数据包)时,所述服务功能路径生成装置可以直接根据所述保存的所述数据流标识与所述服务功能路径的对应关系,确定服务功能路径,可以快速为数据流数据包确定相应的服务功能路径,无需为每个数据流数据包执行根据服务功能链的信息去确定服务功能路径,大大提高了效率,能够避免由此带来的服务功能路径生成装置性能下降的缺陷。
在数据流数据包传输的过程中,根据传输阶段的不同,可以划分为数据流首次发起、数据流中间传输以及数据流结束三个阶段。
为了便于服务功能路径生成装置对接收到的数据流数据包确定服务功能路径,可以由服务功能链选择装置在数据流中设置表示该数据流数据包所处数据流的阶段位置的阶段标识。具体地,阶段标识可以包括:开始标识,可以包含但不限于“start”或“begin”等信息,除开始标识之外,还可以包括:结束标识,可以包含但不限于“end”等信息。在数据流首次发起和数据流结束阶段时,可以分别将该开始标识和结束标识封装在数据包头中,例如:封装在服务功能链标识中。由此,当服务功能路径生成装置识别出在数据流数据包中携带的开始标识时,确定数据流数据包处于整个数据流的开始阶段;当服务功能路径生成装置识别出由分类器在数据流数据包中携带的结束标识时,确定数据流数据包处于整个数据流的结束阶段。
对于处于中间传输阶段的数据流数据包,所述服务功能链选择装置可以不做任何处理,保持数据流数据包内容不变。因此,当服务功能路径生成装置未在数据流数据包中识别出表示数据流数据包所处整个数据流的阶段位置的阶段标识时,确定数据流数据包处于整个数据流的中间传输阶段。
此外,在数据流传输的结束阶段,服务功能路径生成装置还可以删除已保存的数据流标识与服务功能路径的对应关系,例如:如果服务功能路径生成装置在数据流开始建立了服务功能路径表,以保存数据流标识与服务功能路径的对应关系,则在数据流传输的结束阶段,可以删除在数据流开始阶段建立的服务功能路径表。
为了防止标识有结束标识的数据包丢失而造成的不能及时删除路由表的问题,也可以在服务功能路径生成装置上设置老化时间定时器,当定时器超时后,删除服务功能路径表,该老化时间的定时器时长可稍大于在分类器上设置的老化时间定时器,定时器可以是配置在服务功能路径生成装置上的。
此外,在应用过程中,可能存在网络拓扑发生改变的情况,例如:服务功能中的实例数量增加或者减少,或者,服务功能实例的位置发生改变,如:服务功能实例从当前的服务功能路径生成装置移动到其它的服务功能路径生成装置或者交换机上。为了在网络拓扑发生改变的情况下,便于服务功能路径生成装置确定服务功能路径,在本发明提供的另一个实施例中,可以在数据流数据包中设置网络拓扑结构状态信息,由数据流数据包携带网络拓扑结构状态信息。由于在服务功能实例情况变化时,服务功能实例选择算法将不同于服务功能设备变化前,因此,该种情形中,实例选择算法需指示该算法所对应的网络拓扑结构状态,从而,服务功能路径生成装置能够根据接收到的网络拓扑结构状态信息对应到不同的实例选择算法。实例选择算法与网络拓扑结构状态的对应关系可以包括但不限于以下形式:
表1 服务功能实例选择算法与网络拓扑结构状态的对应关系
表1中,“网络拓扑结构状态”的名称不限制,此处,用“0~2”表示不同的网络拓扑结构状态。
该实施例的一种执行流程如图4所示,包括:
步骤401、所述服务功能路径生成装置获取数据流数据包和该数据流数据包的服务功能链的信息,其中,数据流数据包中携带网络拓扑结构状态信息;服务功能链的信息包括:数据流数据包所需经过的服务功能的标识;
步骤402、服务功能路径生成装置根据当前网络拓扑结构,确定当前网络拓扑结构对应的实例选择算法;
步骤403、服务功能路径生成装置根据服务功能链的信息、实例选择参数和网络拓扑结构对应的实例选择算法,确定所述数据流数据包的服务功能中的实例,其中,实例选择参数包括:数据流数据包的服务功能中各实例的负荷权重。
该实施例中,通过对应关系,将实例选择算法与网络拓扑结构状态相结合。
当网络拓扑发生变化时,服务功能链选择装置能够根据变化后的网络拓扑,获得最新的服务功能链的信息,并获取网络拓扑结构状态信息。服务功能链选择装置在向服务功能路径生成装置发送数据流数据包时,在该数据流数据包中,可以携带服务功能链的信息和网络拓扑结构状态信息。
服务功能链选择装置获取网络拓扑结构状态信息的实现方式可以是:由服务功能链控制执行装置指示服务功能链选择装置网络拓扑结构信息,例如:当网络拓扑发生变化时,由服务功能链控制执行装置向服务功能链选择装置发送网络拓扑结构状态指示,指示服务功能链选择装置当前的网络拓扑结构发生变化,指示中携带变化后的网络拓扑结构信息。
本发明实施例中,服务功能链控制执行装置如何指示服务功能链选择装置并不限制,例如:服务功能链控制执行装置可以向服务功能链选择装置发送一个事件通知消息,在该通知消息中可以包含一个指示位用以表示网络拓扑结构变化的不同阶段,如:在网络刚运行时该指示位为0,每发生一次网络拓扑变化,数值就增加1,为了方便描述,该指示位的名称定义为“阶段”(Stage)。可选地,在数据流首次发起、数据流中间传输以及数据流结束三个阶段中,数据流中均可以携带该表示网络拓扑结构状态的指示位。
服务功能路径生成装置根据实例选择算法与网络拓扑结构状态的对应关系,可确定对应当前网络拓扑结构状态的服务功能设备选择算法。进而,服务功能路径生成装置根据携带在数据流数据包中的服务功能链的信息,确定服务功能序列,进一步,根据当前网络拓扑结构下应采用的实例选择算法,即可确定数据流数据包需要经过的服务功能链对应各服务功能中的具体服务功能实例。
为了便于服务功能路径生成装置对接收到的处于不同传输阶段的数据流数据包确定服务功能路径,服务功能链选择装置除了在数据流中携带网络拓扑结构状态信息之外,还可以在数据流中携带表示该数据流数据包所处整个数据流的阶段位置的阶段标识。具体实现方式已在前面实施例中进行了详细描述,因此,此处不再进行赘述。
需要说明的是,上述各个实施例中,服务功能路径生成装置所确定出的服务功能路径,可能是只指明具体实例的标识的路径,此外,还可能是一个包括网络属性信息具体IP地址的路径。这是由于,服务功能链的信息中,可以包括:服务功能内各实例的网络属性信息,服务功能内各实例的网络属性信息包括服务功能内各实例在所处网络的各种路由/转发标识等属性信息,例如:IP地址、端口号信息等。为了描述方便,将所述信息称为网络属性信息。
上述实施例从服务功能路径生成装置一侧,描述了确定服务功能路径过程中的相关执行流程。相应的,本发明还从服务功能链选择模块一侧,描述了相关执行流程。如图5所示,包括以下执行步骤:
步骤501、服务功能链选择装置接收数据流数据包;
步骤502、所述服务功能链选择装置获取所述数据流数据包的服务功能链的信息,所述服务功能链的信息包括所述数据流数据包所需经过的服务功能的标识;
步骤503、所述服务功能链选择装置向所述服务功能路径生成装置发送所述数据流数据包和所述服务功能链的信息,以便所述服务功能路径生成装置根据所述服务功能链的信息,确定所述数据流数据包的服务功能路径。
该实施例中,服务功能链选择装置可以为PCEF或TDF。服务功能链选择装置获取服务功能链的信息,可以根据服务功能选择策略进行确定,也可以直接获取。通常,根据运营商的策略,例如:根据用户的类型、用户的签约数据以及网络状况等信息,为不同的数据流制定不同的服务功能链路由,并采用不同的服务功能的标识表示该服务功能链的信息。
第一种实现方式中,服务功能选择策略是指数据流的处理策略,该策略可以从激活的,PCC规则或ADC规则中获取。例如:某用户签约了防病毒服务功能,且对于视频数据流签约了压缩处理服务功能,其中,防病毒与压缩处理都属于服务功能选择策略。当服务功能路径生成装置接收到这些策略后,即可根据各种处理功能的特点与顺序,确定具体的服务功能链。
第二种实现方式中,由服务功能链生成装置,例如PCRF,根据签约数据或者配置信息等生成服务功能链。比如某个用户签约执行防病毒处理,那么,PCRF可以通过PCC规则或ADC规则将该服务功能选择策略(防病毒)安装到服务功能链选择装置,从而,服务功能链选择装置根据收到的服务功能选择策略,确定处理所需的功能实例顺序,从而生成服务功能链。
具体地,服务功能链选择装置基于服务功能链的分类原则,将数据包分类,并将获取的对应该业务类型的服务功能链标识加入数据包头中,以便于服务功能路径生成装置能够根据该服务功能链标识采用相应的路由策略。例如,如果服务功能链是基于业务类型分类,则需要解析业务类型,并且在不同的业务类型的数据包中标识该业务类型对应的服务功能链标识;如果服务功能链是基于五元组信息分类的,则基于五元组信息将数据流分类,并在该数据流的数据包中包含对应的服务功能链标识。其它分类方式类似机制处理。
数据包和服务功能链的信息可以分别进行发送,也可以将二者合并进行发送。
在将数据包和服务功能链的信息合并发送方式中,可以在数据包中设置服务功能链的信息,如:将服务功能链标识加入数据包头中。
在服务功能链选择装置向服务功能路径生成装置发送数据流数据包的过程中,根据传输阶段的不同,可以划分为数据流首次发起、数据流中间传输以及数据流结束三个阶段。
为了便于服务功能路径生成装置对接收到的处于不同传输阶段的数据流数据包确定服务功能路径,可以由分类器在数据流中携带表示该数据流数据包所处整个数据流的阶段位置的阶段标识。具体地,阶段标识可以包括:开始标识,可以包含但不限于“start”或“begin”等信息,除开始标识之外,还可以包括:结束标识,可以包含但不限于“end”等信息。在数据流首次发起和数据流结束阶段时,可以分别将该开始标识和结束标识封装在数据包头中,例如封装在服务功能链标识中。由此,当服务功能路径生成装置识别出由分类器在数据流数据包中携带的开始标识时,确定数据流数据包处于整个数据流的开始阶段;当服务功能路径生成装置识别出由分类器在数据流数据包中携带的结束标识时,确定数据流数据包处于整个数据流的结束阶段。
对于处于中间传输阶段的数据流数据包,不包含“开始”与“结束”标志。因此,当服务功能路径生成装置未在数据流数据包中识别出表示数据流数据包所处整个数据流的阶段位置的阶段标识时,确定数据流数据包处于整个数据流的中间传输阶段。
在另一个实施例中,服务功能链选择装置侧的处理流程还可以为图6所示流程,具体可以包括:
步骤601、服务功能链选择装置接收数据流数据包;
步骤602、所述服务功能链选择装置获取所述数据流数据包的服务功能链的信息,所述服务功能链的信息包括所述数据流数据包所需经过的服务功能的标识;
步骤603、所述服务功能链选择装置接收网络拓扑结构状态指示;
步骤604、所述服务功能链选择装置根据所述网络拓扑结构状态指示,在所述数据流数据包中设置网络拓扑结构状态信息;
步骤605、所述服务功能链选择装置向所述服务功能路径生成装置发送携带所述网络拓扑结构状态信息的数据流数据包和所述服务功能链的信息,以便所述服务功能路径生成装置根据所述服务功能链的信息,确定所述数据流数据包的服务功能路径。
该实施例中,可能存在网络拓扑发生改变的情况,可以由服务功能链控制执行装置向服务功能链选择装置发送网络拓扑结构状态指示,也可以是服务功能链控制执行装置通过第三方设备向服务功能链选择装置发送网络拓扑结构状态指示。通过该指示通知服务功能链选择装置当前网络拓扑结构状态信息。本发明实施例中,服务功能链控制执行装置如何指示服务功能链选择装置并不限制,例如:服务功能链控制执行装置可以向服务功能链选择装置发送一个事件通知消息,在该通知消息中可以包含一个指示用以表示网络拓扑结构变化状态信息,如:在网络刚运行时该指示位为0,每发生一次网络拓扑变化,数值就增加1,为了方便描述,该指示位的名称不限定,可以为“Stage”。在数据流首次发起、数据流中间传输以及数据流结束三个阶段中,数据流中均携带该表示变化后的网络拓扑结构状态的指示位。服务功能链选择装置获取服务功能的标识,并获取变化后的网络拓扑结构状态。服务功能链选择装置在向服务功能路径生成装置发送数据流数据包时,在该数据流数据包中,可以同时携带服务功能的标识和网络拓扑结构状态信息。
如前所述,所述数据流数据包所需经过的服务功能的标识表现形式,可以包括:数据流数据包所需经过的服务功能的字符串、数据流数据包所需经过的服务功能的实例组列表和表示数据流数据包所需经过的服务功能的数字标签等形式。此处不再进行赘述。
以图7所示的网络架构为例,服务功能路径为(服务功能1-1,服务功能2-2,服务功能3-4),当网络拓扑发生变化,如图8所示,服务功能1-1转移到交换机2,但要保证该数据流保持不变,采用上述增加Stage标识的方式可以实现该数据流不中断。具体为:当网络拓扑发生变化后,服务功能链控制执行模块获取变化后的各个服务功能的信息,包括:各服务功能实例的位置、端口等信息;服务功能链控制执行模块向服务功能路径生成装置(包括所有控制的交换机,如图9中的交换机1与交换机2)发送服务功能链标识以及服务功能设备选择算法,以及网络拓扑结构状态信息,服务功能链选择装置获取变化后的网络拓扑结构状态信息,在该数据流数据包中,携带服务功能的标识,并包含当前变化后的网络拓扑结构状态信息,将数据流数据包发送至服务功能路径生成装置2;服务功能路径生成装置2根据网络拓扑结构状态信息确定相应的实例选择算法,进而,根据该算法确定该数据流数据包的服务功能路径。通过这种方式,数据流在网络拓扑变化后仍然会通过位于服务功能路径生成装置2上的服务功能1-1,从而不会发生中断的问题。
为了便于对本方案的理解,下面通过具体应用场景对上述确定服务功能路径的方法进行详细说明。
图9所示为数据流首次发起的场景下,确定服务功能路径的流程,包括:
步骤901、服务功能链控制执行装置获取服务功能链的信息;其中,服务功能链的信息中还可以包括服务功能内各实例的网络属性信息;
步骤902、服务功能链控制执行装置向服务功能路径生成装置下发服务功能链的信息以及实例选择参数或实例选择算法;
步骤903、服务功能链选择装置获取服务功能链的信息,可以从PCRF获取,也可以在本地进行配置;
步骤904、服务功能链选择装置接收数据流数据包;
步骤905、服务功能链选择装置识别当前数据流为开始阶段;
步骤906、服务功能链选择装置数据流开始的数据包中设置开始标志;
步骤907、服务功能链选择装置在数据流数据包头中加入服务功能的标识,向服务功能路径生成装置发送携带该服务功能的标识的数据流数据包;
步骤908、服务功能路径生成装置接收数据流数据包,根据接收到的服务功能链的信息以及实例选择参数或实施选择算法确定所述数据流数据包的服务功能路径;同时,可以记录数据流标识与服务功能路径的对应关系,生成服务功能路径表;
步骤909、服务功能路径生成装置按照服务功能路径,向对应的服务功能实例转发数据流数据包。
图10所示为数据流中间传输阶段的场景下,确定服务功能路径的流程,包括:
步骤1001、服务功能链选择装置接收数据流数据包;
步骤1002、服务功能链选择装置识别当前数据流为中间传输阶段;
步骤1003、服务功能链选择装置对当前数据流数据包不做任何处理;
步骤1004、服务功能链选择装置在数据流数据包头中加入服务功能的标识,向服务功能路径生成装置发送携带该服务功能链标识的数据流数据包;
步骤1005、服务功能路径生成装置根据服务功能路径表,确定该数据流数据包对应的服务功能路径;
步骤1006、服务功能路径生成装置按照服务功能路径,向对应的服务功能实例转发数据流数据包。
图11所示为数据流结束阶段的场景下,确定服务功能路径的流程,包括:
步骤1101、服务功能链选择装置接收数据流数据包;
步骤1102、服务功能链选择装置识别当前数据流为结束阶段;
步骤1103、服务功能链选择装置在数据流数据包中携带结束标志;
步骤1104、服务功能链选择装置在数据流数据包头中加入服务功能的标识,向服务功能路径生成装置发送携带该服务功能链标识的数据流数据包;
步骤1105、服务功能路径生成装置根据服务功能路径表,确定该数据流数据包对应的服务功能路径;
步骤1106、服务功能路径生成装置按照服务功能路径,向对应的服务功能实例转发数据流数据包;
步骤1107、服务功能路径生成装置删除当前数据流对应的服务功能路径表。
图12所示为网络拓扑发生变化的场景下,确定服务功能路径的流程,包括:
步骤1201、服务功能链控制执行装置根据变化后的网络拓扑,获得最新的网络拓扑结构信息;
步骤1202、服务功能链控制执行装置向服务功能路径生成装置发送网络拓扑结构信息,以及网络拓扑结构对应的实例选择算法;
步骤1203、服务功能链控制执行装置指示服务功能链选择装置网络拓扑结构发生变化;
步骤1204~1206、服务功能路径生成装置接收服务功能链选择装置发送的不同传输阶段的数据流数据包,其中,数据流数据包中携带服务功能的标识以及变化后的网络拓扑结构状态信息,确定该数据流数据包对应的服务功能路径,并按照服务功能路径,向对应的服务功能实例转发该数据流数据包。
相应上述确定服务功能路径的方法实施例,本发明提供了相应的设备实施例。
如图13所示,为本发明提供的一种服务功能路径生成装置实施例。其中,该服务功能路径生成装置可以包括:
数据及信息获取模块1301,用于获取数据流数据包和所述数据流数据包的服务功能链的信息,所述服务功能链的信息包括所述数据流数据包所需经过的服务功能的标识;
服务功能路径确定模块1302,用于根据所述服务功能链的信息,确定所述数据流数据包的服务功能路径。
所述服务功能路径可以包括所述数据流数据包所需经过的服务功能的实例的网络属性信息和所述数据流数据包所需经过的服务功能的实例的顺序;或者,所述服务功能路径可以包括所述数据流数据包所需经过的服务功能的实例的标识和所述数据流数据包所需经过的服务功能的实例的顺序,本发明实施例在此不作限定,可以根据服务功能路径将所述数据流数据包路由/转发到相应的服务功能的实例即可。
其中,所述数据及信息获取模块,具体用于接收服务功能链选择装置发送的所述数据流数据包和所述服务功能链的信息。
此外,所述数据及信息获取模块,具体用于接收所述数据流数据包;获取所述数据流数据包的所述服务功能链的信息。该实现方式中,服务功能路径生成装置和服务功能链选择装置设置为同一装置。
对于所述数据及信息获取模块,其具体用于根据服务功能选择策略和所述数据流数据包的数据流标识,确定所述服务功能链的信息;或者,接收PCRF发送的所述服务功能链的信息。
其中,服务功能选择策略是指数据流的处理策略,该策略可以从激活的PCC(Policy and Charging Control,策略与计费控制)规则或ADC(Application Detectionand Control,应用探测与控制)规则中获取。例如:某用户签约了防病毒服务功能,且对于视频数据流签约了压缩处理服务功能,其中,防病毒与压缩处理都属于服务功能选择策略。当服务功能路径生成装置接收到这些策略后,即可根据各种处理功能的特点与顺序,确定具体的服务功能链。当确定服务功能链之后,基于服务功能链的分类原则,将数据包按照数据流标识进行分类,并将获取的对应该业务类型的服务功能链标识加入到数据包头中,以便于服务功能路径生成装置能够根据该服务功能链标识采用相应的路由策略。例如,如果服务功能链是基于业务类型分类,则需要根据数据流标识解析业务类型,并且在不同的业务类型的数据包中设置该业务类型对应的服务功能链标识;如果服务功能链是基于五元组信息分类的,则基于五元组信息将数据流分类,并在该数据流的数据包中设置对应的服务功能链标识。
实际应用场景中,所述数据流数据包所需经过的服务功能的标识表现形式,可以包括:数据流数据包所需经过的服务功能的字符串、数据流数据包所需经过的服务功能的实例组列表和表示数据流数据包所需经过的服务功能的数字标签等形式。
进一步,由于在数据流数据包传输过程中,可能造成某个服务功能中某个或某几个实例负荷较重,而其它的设备轻负荷,甚至闲置没有数据流。如何使每个服务功能中的实例按照负荷比例实现负荷分担是一个要解决的问题。因此,所述服务功能路径确定模块在确定数据流数据包的服务功能路径时,除了需要该数据流数据包的服务功能链的信息,还可以考虑服务功能中各实例的负荷分担情况,从而可以根据数据流数据包所需经过的服务功能中各实例的负荷分担情况,来确定服务功能路径。具体地,所述服务功能路径确定模块可以根据实例选择参数和实例选择算法中的至少一种以及所述服务功能链的信息确定所述服务功能路径。例如所述服务功能路径确定模块可以根据获取到的服务功能链的信息,确定所述数据流数据包所需经过的服务功能和所述数据流数据包所需经过的服务功能的顺序,再根据实例选择参数和/或实例选择算法,可以进一步确定所述数据流数据包所需经过的服务功能的实例和所述数据流数据包所需经过的服务功能的实例的顺序,即确定服务功能路径。其中,实例选择参数和/或实例选择算法与服务功能中各实例的负荷有关,例如,实例选择参数可以包括数据流数据包所需经过的服务功能中各实例的负荷权重,所述服务功能路径确定模块可以根据实例选择参数以及所述服务功能链的信息确定所述数据流数据包的服务功能路径;或者,所述服务功能路径确定模块在确定服务功能实例选择算法时,可以根据各个实例负荷分担的比例,确定数据流数据包的分配方式,例如:如果某一个服务功能包括两个服务功能实例,两实例的负荷分担比例为2∶3,由此,服务功能路径确定模块通过确定服务功能实例选择规则算法,实现将数据流按照2∶3的比例相对均衡地分布在两个服务功能实例上。具体地,服务功能路径确定模块可以对数据流的五元组信息执行哈希算法,此处,哈希算法即为服务功能实例选择规则算法的一种实现形式,根据该哈希算法,服务功能路径确定模块会按照各服务功能实例的负荷分担比例将数据流分发到各个服务功能实例。本发明实施例中,具体哈希算法不限制,例如:可以根据国际移动用户识别码(International Mobile Subscriber Identity,IMSI)执行哈希算法,将用户按照相应的负荷分担比分配在相应服务功能实例上;或者,基于IMSI与服务功能链标识执行哈希算法,将用户以及相应的服务功能链按照相应的负荷分担比例分配到相应服务功能实例。
可选地,所述数据流数据包还可以携带数据流标识,在图14所示的服务功能路径生成装置实施例中,还可以包括:关系存储模块1303,用于保存数据流标识与所述服务功能路径的对应关系,所述数据流数据包携带所述数据流标识。从而,当数据及信息获取模块接收到数据流数据包时,服务功能路径生成装置可以根据当前数据流数据包所对应的数据流标识,查询已保存的数据流标识与服务功能路径的对应关系,确定对应当前数据流数据包的服务功能路径。从而,在接收到携带相同数据流标识的数据流数据包(即同一个数据流中的数据包)时,所述服务功能路径生成装置可以直接根据所述保存的所述数据流标识与所述服务功能路径的对应关系,确定服务功能路径,可以快速为数据流数据包确定相应的服务功能路径,无需为每个数据流数据包执行根据服务功能链的信息去确定服务功能路径。具体地,当数据及信息获取模块,接收数据流中间数据包,所述数据流中间数据包携带所述数据流标识时,所述服务功能路径确定模块,可以根据所述保存的所述数据流标识与所述服务功能路径的对应关系,确定所述数据流中间数据包的所述服务功能路径。
在数据流数据包传输的过程中,根据传输阶段的不同,可以划分为数据流首次发起、数据流中间传输以及数据流结束三个阶段。
为了便于服务功能路径生成装置对接收到的数据流数据包确定服务功能路径,可以由服务功能链选择装置在数据流中设置表示该数据流数据包所处整个数据流的阶段位置的阶段标识。具体地,阶段标识可以包括:开始标识,可以包含但不限于“start”或“begin”等信息,除开始标识之外,还可以包括:结束标识,可以包含但不限于“end”等信息。在数据流首次发起和数据流结束阶段时,可以分别将该开始标识和结束标识封装在数据包头中,例如:封装在服务功能链标识中。由此,当服务功能路径生成装置识别出由分类器在数据流数据包中携带的开始标识时,确定数据流数据包处于整个数据流的开始阶段;当服务功能路径生成装置识别出由分类器在数据流数据包中携带的结束标识时,确定数据流数据包处于整个数据流的结束阶段。
对于处于中间传输阶段的数据流数据包,可以不做任何处理,保持数据包内容不变。因此,当服务功能路径生成装置未在数据流数据包中识别出表示数据流数据包所处整个数据流的阶段位置的阶段标识时,确定数据流数据包处于整个数据流的中间传输阶段。
在确定了数据流的服务功能路径之后,服务功能路径生成装置可以记录数据流标识与数据服务功能路径的对应关系,例如:五元组信息与服务功能路径的对应关系。
服务功能路径生成装置实施例中,还可以包括:
关系删除模块1304,用于在所述数据及信息获取模块接收数据流结束数据包时,删除所述保存的所述数据流标识与所述服务功能路径的对应关系;其中,所述数据流结束数据包携带所述数据流标识和结束标识。
需要说明的是,实际应用场景中,可能存在网络拓扑发生改变的情况,例如:服务功能中的实例数量增加或者减少,或者,服务功能实例的位置发生改变。为了在网络拓扑发生改变的情况下,便于服务功能路径生成装置确定服务功能路径,可以由数据流数据包携带网络拓扑结构状态信息。由于在服务功能实例情况变化时,服务功能实例选择算法将不同于服务功能设备变化前,因此,该种情形中,实例选择算法需指示该算法所对应的网络拓扑结构状态,从而,服务功能路径生成装置能够根据接收到的网络拓扑结构状态信息对应到不同的实例选择算法。由此,服务功能路径确定模块,具体可以根据所述网络拓扑结构,确定所述网络拓扑结构对应的所述实例选择算法;继而,根据所述服务功能链的信息、所述实例选择参数和所述网络拓扑结构对应的所述实例选择算法,最终确定所述数据流数据包的服务功能中的实例。
服务功能链选择装置获取网络拓扑结构状态信息的实现方式可以是:由服务功能链控制执行装置指示服务功能链选择装置网络拓扑结构信息,例如:当网络拓扑发生变化时,由服务功能链控制执行装置向服务功能链选择装置发送网络拓扑结构状态指示,指示服务功能链选择装置当前的网络拓扑结构发生变化,指示中携带变化后的网络拓扑结构信息。
本发明实施例中,服务功能链控制执行装置如何指示服务功能链选择装置并不限制,例如:服务功能链控制执行装置可以向服务功能链选择装置发送一个事件通知消息,在该通知消息中可以包含一个指示位用以表示网络拓扑结构变化的不同阶段。
服务功能路径生成装置为交换机、PCEF或TDF。
实际应用中,服务功能路径生成装置可以设置为独立于交换机的功能实体,也可以与交换机集成为一体,对此,本发明实施例并不做具体限定。当服务功能路径生成装置采用与交换机集成为一体的设置形式时,服务功能路径生成装置可以直接按照服务功能路径信息路由\转发数据包至对应的服务功能实例。而当服务功能路径生成装置设置为独立于交换机的功能实体时,服务功能路径生成装置在确定数据流数据包的服务功能路径之后,还需要通过一转发模块,将服务功能路径发送至交换机,由交换机按照服务功能路径信息路由\转发数据包至对应的服务功能实例。
如图15所示,为本发明提供的一种服务功能链选择装置实施例。其中,该服务功能链选择装置可以包括:
数据包接收模块1501,用于接收数据流数据包;
服务功能链的信息获取模块1502,用于获取所述数据流数据包的服务功能链的信息,所述服务功能链的信息包括所述数据流数据包所需经过的服务功能的标识;
数据及信息发送模块1503,用于向所述服务功能路径生成装置发送所述数据流数据包和所述服务功能链的信息,以便所述服务功能路径生成装置根据所述服务功能链的信息,确定所述数据流数据包的服务功能路径。
该实施例中,服务功能链选择装置可以为PCEF或TDF。
具体地,所述服务功能链的信息获取模块,用于根据服务功能选择策略,确定所述服务功能链的信息;或者,所述服务功能链选择装置接收所述数据流数据包的服务功能链的信息。即:服务功能链的信息,可以根据服务功能选择策略进行确定,也可以从PCRF直接获取。通常,根据运营商的策略,例如:根据用户的类型、用户的签约数据以及网络状况等信息,为不同的数据流制定不同的服务功能链路由,并采用不同的服务功能的标识表示该服务功能链的信息。服务功能选择策略是指数据流的处理策略,该策略可以从激活的PCC规则或ADC规则中获取。此外,服务功能选择策略可以由PCRF通过用户签约数据获取。
为了便于服务功能路径生成装置对接收到的处于不同传输阶段的数据流数据包确定服务功能路径,可以由分类器在数据流中携带表示该数据流数据包所处整个数据流的阶段位置的阶段标识。具体地,阶段标识可以包括:开始标识和结束标识。在数据流首次发起阶段时,可以通过开始标识设置模块,将该开始标识封装在数据包头中;以及,在数据流结束阶段,通过结束标识设置模块,将结束标识封装在数据包头中,例如封装在服务功能链标识中。由此,当服务功能路径生成装置识别出由分类器在数据流数据包中携带的开始标识时,确定数据流数据包处于整个数据流的开始阶段;当服务功能路径生成装置识别出由分类器在数据流数据包中携带的结束标识时,确定数据流数据包处于整个数据流的结束阶段。
对于处于中间传输阶段的数据流数据包,不包含“开始”与“结束”标志。因此,当服务功能路径生成装置未在数据流数据包中识别出表示数据流数据包所处整个数据流的阶段位置的阶段标识时,确定数据流数据包处于整个数据流的中间传输阶段。
在图16所示的服务功能链选择装置实施例中,还可以包括:
拓扑指示接收模块1504,用于接收网络拓扑结构状态指示;
拓扑信息设置模块1505,用于根据所述网络拓扑结构状态指示,在所述数据流数据包中设置网络拓扑结构状态信息。
该实施例中,可能存在网络拓扑发生改变的情况,可以由服务功能链控制执行装置向服务功能链选择装置发送网络拓扑结构状态指示,也可以是服务功能链控制执行装置通过第三方设备向服务功能链选择装置发送网络拓扑结构状态指示。通过该指示通知服务功能链选择装置当前网络拓扑结构状态信息。本发明实施例中,服务功能链控制执行装置如何指示服务功能链选择装置并不限制。服务功能链选择装置在向服务功能路径生成装置发送数据流数据包时,在该数据流数据包中,可以通过拓扑信息设置模块在数据流数据包中设置网络拓扑结构状态信息,从而,使得数据流数据包中可以同时携带服务功能的标识和网络拓扑结构状态信息。
如前所述,数据流数据包所需经过的服务功能的标识表现形式,可以包括:数据流数据包所需经过的服务功能的字符串、数据流数据包所需经过的服务功能的实例组列表和表示数据流数据包所需经过的服务功能的数字标签等形式。此处不再进行赘述。
如图17所示,本发明还提供了一种基于计算机系统实现的服务功能路径生成装置,具体实现中,该装置可以包括:处理器1701、存储器1702、总线1703和通信接口1704;所述存储器1702用于存储计算机执行指令,所述处理器1701与所述存储器1702通过所述总线1703连接,当所述服务功能路径生成装置运行时,所述处理器1701执行所述存储器1702存储的所述计算机执行指令,以使所述服务功能路径生成装置执行图3-4或9-12中任一所述确定服务功能路径的方法流程。
相应地,如图18所示,本发明还提供了一种基于计算机系统实现的服务功能链选择装置,具体实现中,该装置可以包括:处理器1801、存储器1802、总线1803和通信接口1804;所述存储器1802用于存储计算机执行指令,所述处理器1801与所述存储器1802通过所述总线1803连接,当所述服务功能链选择装置运行时,所述处理器1801执行所述存储器1802存储的所述计算机执行指令,以使所述服务功能链选择装置执行图5-6或9-12中任一所述确定服务功能路径的方法流程。
具体实现中,上述处理器可以是中央处理器(central processing unit,CPU)、专用集成电路(application-specific integrated circuit,ASIC)等。计算机存储介质可存储有程序,该程序执行时可包括本发明实施例提供的数据传输的方法的各实施例中的部分或全部步骤。所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。
本发明实施例还提供了一种计算机可读介质,包括计算机执行指令,以供计算机的处理器执行所述计算机执行指令时,所述计算机执行图3-4或9-12中任一所述的确定服务功能路径的方法。
实施例还提供了一种计算机可读介质,包括计算机执行指令,以供计算机的处理器执行所述计算机执行指令时,所述计算机执行图5-6或9-12中任一所述的确定服务功能路径的方法流程。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
Claims (46)
1.一种确定服务功能路径的方法,其特征在于,包括:
服务功能路径生成装置获取数据流数据包和所述数据流数据包的服务功能链的信息,所述服务功能链的信息包括所述数据流数据包所需经过的服务功能的标识,所述数据流数据包携带网络拓扑结构状态信息;
所述服务功能路径生成装置根据所述网络拓扑结构,确定所述网络拓扑结构对应的实例选择算法;
所述服务功能路径生成装置根据所述服务功能链的信息、实例选择参数和所述网络拓扑结构对应的所述实例选择算法,确定所述数据流数据包的服务功能路径,所述服务功能路径包括所述数据流数据包所需经过的服务功能的实例和所述数据流数据包所需经过的服务功能的实例的顺序。
2.根据权利要求1所述的方法,其特征在于,所述服务功能路径生成装置获取数据流数据包和所述数据流数据包的服务功能链的信息,包括:
所述服务功能路径生成装置接收服务功能链选择装置发送的所述数据流数据包和所述服务功能链的信息。
3.根据权利要求1所述的方法,其特征在于,所述服务功能路径生成装置获取数据流数据包和所述数据流数据包的服务功能链的信息,包括:
所述服务功能路径生成装置接收所述数据流数据包;
所述服务功能路径生成装置获取所述数据流数据包的所述服务功能链的信息。
4.根据权利要求3所述的方法,其特征在于,所述服务功能路径生成装置获取所述数据流数据包的所述服务功能链的信息,包括:
所述服务功能路径生成装置根据服务功能选择策略数据流,确定所述服务功能链的信息;
或者,所述服务功能路径生成装置接收所述服务功能链的信息。
5.根据权利要求4所述的方法,其特征在于,所述服务功能选择策略是通过策略与计费控制PCC规则或者应用探测与控制ADC规则确定的。
6.根据权利要求1所述的方法,其特征在于,所述实例选择参数包括所述数据流数据包的服务功能中各实例的负荷权重。
7.根据权利要求1所述的方法,其特征在于,所述实例选择算法为基于国际移动用户识别码IMSI的哈希算法、基于IP五元组的哈希算法和基于IMSI与服务功能链标识的哈希算法中的任一种。
8.根据权利要求1-7中任一项所述的方法,其特征在于,所述数据流数据包携带数据流标识,所述方法还包括:
所述服务功能路径生成装置保存所述数据流标识与所述服务功能路径的对应关系。
9.根据权利要求8所述的方法,其特征在于,所述服务功能路径生成装置保存所述数据流标识与所述服务功能路径的对应关系包括:
所述服务功能路径生成装置在所述数据流数据包携带开始标识时,保存所述数据流标识与所述服务功能路径的对应关系,所述开始标识用于指示所述数据流数据包处于数据流的开始阶段。
10.根据权利要求8所述的方法,其特征在于,还包括:
所述服务功能路径生成装置接收数据流中间数据包,所述数据流中间数据包携带所述数据流标识;
所述服务功能路径生成装置根据所述保存的所述数据流标识与所述服务功能路径的对应关系,确定所述数据流中间数据包的所述服务功能路径。
11.根据权利要求8所述的方法,其特征在于,还包括:
所述服务功能路径生成装置接收数据流结束数据包,所述数据流结束数据包携带所述数据流标识和结束标识,所述结束标识用于指示所述数据流结束数据包处于数据流的结束阶段;
所述服务功能路径生成装置删除所述保存的所述数据流标识与所述服务功能路径的对应关系。
12.根据权利要求1-7任一项所述的方法,其特征在于,所述服务功能路径生成装置为交换机、策略与计费执行功能PCEF或数据流探测功能TDF。
13.根据权利要求1-7任一项所述的方法,其特征在于,还包括:
所述服务功能路径生成装置将所述服务功能路径发送给交换机。
14.根据权利要求1-7中任一项所述的方法,其特征在于,所述数据流数据包所需经过的服务功能的标识为所述数据流数据包所需经过的服务功能的字符串、所述数据流数据包所需经过的服务功能的实例组列表和表示所述数据流数据包所需经过的服务功能的数字标签中的任一种形式。
15.一种确定服务功能路径的方法,其特征在于,包括:
服务功能链选择装置接收数据流数据包;
所述服务功能链选择装置获取所述数据流数据包的服务功能链的信息,所述服务功能链的信息包括所述数据流数据包所需经过的服务功能的标识;
所述服务功能链选择装置接收网络拓扑结构状态指示;
所述服务功能链选择装置根据所述网络拓扑结构状态指示,在所述数据流数据包中设置网络拓扑结构状态信息;
所述服务功能链选择装置向所述服务功能路径生成装置发送所述数据流数据包和所述服务功能链的信息,以便所述服务功能路径生成装置根据所述网络拓扑结构确定对应的实例选择算法,并根据所述服务功能链的信息、实例选择参数和所述网络拓扑结构对应的所述实例选择算法,确定所述数据流数据包的服务功能路径。
16.根据权利要求15所述的方法,其特征在于,所述服务功能链选择装置获取所述数据流数据包的服务功能链的信息包括:
所述服务功能链选择装置根据服务功能选择策略,确定所述服务功能链的信息;
或者,所述服务功能链选择装置接收所述数据流数据包的服务功能链的信息。
17.根据权利要求16所述的方法,其特征在于,所述服务功能选择策略是通过策略与计费控制PCC规则或者应用探测与控制ADC规则确定的。
18.根据权利要求15-17中任一项所述的方法,其特征在于,还包括:
当所述数据流数据包处于数据流的开始阶段时,所述服务功能链选择装置在所述数据流数据包中携带开始标识。
19.根据权利要求15-17中任一项所述的方法,其特征在于,还包括:
当所述数据流数据包处于数据流的结束阶段时,所述服务功能链选择装置在所述数据流数据包中携带结束标识。
20.根据权利要求15-17中任一项所述的方法,其特征在于,所述服务功能链选择装置为策略与计费执行功能PCEF或数据流探测功能TDF。
21.根据权利要求15-17中任一项所述的方法,其特征在于,所述数据流数据包所需经过的服务功能的标识为所述数据流数据包所需经过的服务功能的字符串、所述数据流数据包所需经过的服务功能的实例组列表和表示所述数据流数据包所需经过的服务功能的数字标签中的任一种形式。
22.一种服务功能路径生成装置,其特征在于,包括:
数据及信息获取模块,用于获取数据流数据包和所述数据流数据包的服务功能链的信息,所述服务功能链的信息包括所述数据流数据包所需经过的服务功能的标识,所述数据流数据包携带网络拓扑结构状态信息;
服务功能路径确定模块,用于根据所述网络拓扑结构,确定所述网络拓扑结构对应的实例选择算法;根据所述服务功能链的信息、实例选择参数和所述网络拓扑结构对应的所述实例选择算法,确定所述数据流数据包的服务功能路径,所述服务功能路径包括所述数据流数据包所需经过的服务功能的实例和所述数据流数据包所需经过的服务功能的实例的顺序。
23.根据权利要求22所述的服务功能路径生成装置,其特征在于,所述数据及信息获取模块具体用于接收服务功能链选择装置发送的所述数据流数据包和所述服务功能链的信息。
24.根据权利要求22所述的服务功能路径生成装置,其特征在于,所述数据及信息获取模块具体用于接收所述数据流数据包,获取所述数据流数据包的所述服务功能链的信息。
25.根据权利要求24所述的服务功能路径生成装置,其特征在于,所述数据及信息获取模块具体用于根据服务功能选择策略数据流确定所述服务功能链的信息;或者,接收所述服务功能链的信息。
26.根据权利要求25所述的服务功能路径生成装置,其特征在于,所述服务功能选择策略是通过策略与计费控制PCC规则或者应用探测与控制ADC规则确定的。
27.根据权利要求22所述的装置,其特征在于,所述实例选择参数包括所述数据流数据包的服务功能中各实例的负荷权重。
28.根据权利要求22所述的装置,其特征在于,所述实例选择算法为基于国际移动用户识别码IMSI的哈希算法、基于IP五元组的哈希算法和基于IMSI与服务功能链标识的哈希算法中的任一种。
29.根据权利要求22-28中任一项所述的装置,其特征在于,所述数据及信息获取模块还包括:
关系存储模块,用于保存数据流标识与所述服务功能路径的对应关系,所述数据流数据包携带所述数据流标识。
30.根据权利要求29所述的装置,其特征在于,所述关系存储模块具体用于,在所述数据流数据包携带开始标识时,保存所述数据流标识与所述服务功能路径的对应关系,所述开始标识用于指示所述数据流数据包处于数据流的开始阶段。
31.根据权利要求29所述的装置,其特征在于,所述数据及信息获取模块还用于接收数据流中间数据包,所述数据流中间数据包携带所述数据流标识时;
则所述服务功能路径确定模块具体用于根据所述数据及信息获取模块保存的所述数据流标识与所述服务功能路径的对应关系,确定所述数据流中间数据包的所述服务功能路径。
32.根据权利要求29所述的装置,其特征在于,还包括:
关系删除模块,用于在所述数据及信息获取模块接收数据流结束数据包时,删除所述保存的所述数据流标识与所述服务功能路径的对应关系;其中,所述数据流结束数据包携带所述数据流标识和结束标识,所述结束标识用于指示所述数据流结束数据包处于数据流的结束阶段。
33.根据权利要求22-28中任一项所述的装置,其特征在于,所述服务功能路径生成装置为交换机、策略与计费执行功能PCEF或数据流探测功能TDF。
34.根据权利要求22-28中任一项所述的装置,其特征在于,还包括:
转发模块,用于将所述服务功能路径发送给交换机。
35.根据权利要求22-28中任一项所述的装置,其特征在于,所述数据流数据包所需经过的服务功能的标识为所述数据流数据包所需经过的服务功能的字符串、所述数据流数据包所需经过的服务功能的实例组列表和表示所述数据流数据包所需经过的服务功能的数字标签中的任一种形式。
36.一种服务功能链选择装置,其特征在于,包括:
数据包接收模块,用于接收数据流数据包;
服务功能链的信息获取模块,用于获取所述数据流数据包的服务功能链的信息,所述服务功能链的信息包括所述数据流数据包所需经过的服务功能的标识;
拓扑指示接收模块,用于接收网络拓扑结构状态指示;
拓扑信息设置模块,用于根据所述网络拓扑结构状态指示,在所述数据流数据包中设置网络拓扑结构状态信息;
数据及信息发送模块,用于向服务功能路径生成装置发送所述数据流数据包和所述服务功能链的信息,以便所述服务功能路径生成装置根据所述网络拓扑结构确定对应的实例选择算法,并根据所述服务功能链的信息、实例选择参数和所述网络拓扑结构对应的所述实例选择算法,确定所述数据流数据包的服务功能路径。
37.根据权利要求36所述的装置,其特征在于,所述服务功能链的信息获取模块具体用于根据服务功能选择策略,确定所述服务功能链的信息;或者,接收所述数据流数据包的服务功能链的信息。
38.根据权利要求37所述的装置,其特征在于,所述服务功能选择策略是通过策略与计费控制PCC规则或者应用探测与控制ADC规则确定的。
39.根据权利要求36-38中任一项所述的装置,其特征在于,还包括:
开始标识设置模块,用于当所述数据流数据包处于数据流的开始阶段时,在所述数据流数据包中携带开始标识。
40.根据权利要求36-38中任一项所述的装置,其特征在于,还包括:
结束标识设置模块,用于当所述数据流数据包处于数据流的结束阶段时,在所述数据流数据包中携带结束标识。
41.根据权利要求36-38中任一项所述的装置,其特征在于,所述服务功能链选择装置为策略与计费执行功能PCEF或数据流探测功能TDF。
42.根据权利要求36-38中任一项所述的装置,其特征在于,所述数据流数据包所需经过的服务功能的标识为所述数据流数据包所需经过的服务功能的字符串、所述数据流数据包所需经过的服务功能的实例组列表和表示所述数据流数据包所需经过的服务功能的数字标签中的任一种形式。
43.一种服务功能路径生成装置,其特征在于,包括处理器、存储器、总线和通信接口;
所述存储器用于存储计算机执行指令,所述处理器与所述存储器通过所述总线连接,当所述服务功能路径生成装置运行时,所述处理器执行所述存储器存储的所述计算机执行指令,以使所述服务功能路径生成装置执行如权利要求1-14中任一项所述的确定服务功能路径的方法。
44.一种服务功能链选择装置,其特征在于,包括处理器、存储器、总线和通信接口;
所述存储器用于存储计算机执行指令,所述处理器与所述存储器通过所述总线连接,当所述服务功能链选择装置运行时,所述处理器执行所述存储器存储的所述计算机执行指令,以使所述服务功能链选择装置执行如权利要求15-21中任一项所述的确定服务功能路径的方法。
45.一种计算机可读介质,其特征在于,包括计算机执行指令,以供计算机的处理器执行所述计算机执行指令时,所述计算机执行如权利要求1-14中任一项所述的确定服务功能路径的方法。
46.一种计算机可读介质,其特征在于,包括计算机执行指令,以供计算机的处理器执行所述计算机执行指令时,所述计算机执行如权利要求15-21中任一项所述的确定服务功能路径的方法。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2014/085690 WO2016033729A1 (zh) | 2014-09-01 | 2014-09-01 | 一种确定服务功能路径的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105745874A CN105745874A (zh) | 2016-07-06 |
CN105745874B true CN105745874B (zh) | 2020-01-10 |
Family
ID=55438979
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201480022265.XA Active CN105745874B (zh) | 2014-09-01 | 2014-09-01 | 一种确定服务功能路径的方法及装置 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN105745874B (zh) |
WO (1) | WO2016033729A1 (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
BR112018073335A2 (pt) | 2016-05-13 | 2019-02-26 | Ericsson Telecomunicações S.A. | método, nó de encadeamento de função de serviço, e, mídia de armazenamento legível por computador . |
FR3081644A1 (fr) * | 2018-06-22 | 2019-11-29 | Orange | Procede de decouverte de fonctions intermediaires et de selection d'un chemin entre deux equipements de communication |
WO2020085014A1 (ja) * | 2018-10-25 | 2020-04-30 | ソニー株式会社 | 通信装置、通信方法及びデータ構造 |
CN111565125B (zh) * | 2020-07-15 | 2020-10-09 | 成都数维通信技术有限公司 | 一种报文穿越网络流量路径的获取方法 |
CN113507411B (zh) * | 2021-06-10 | 2022-10-18 | 中国联合网络通信集团有限公司 | 一种路径选择方法、装置、设备及存储介质 |
CN115086220B (zh) * | 2022-06-30 | 2024-05-17 | 绿盟科技集团股份有限公司 | 一种网络报文转发方法、装置、设备及介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101291420A (zh) * | 2007-04-20 | 2008-10-22 | 华为技术有限公司 | 基于ims的iptv系统及内容保护服务功能实体和方法 |
CN103338150A (zh) * | 2013-07-19 | 2013-10-02 | 中国人民解放军信息工程大学 | 信息通信网络体系结构建立方法、装置、服务器和路由器 |
CN103905447A (zh) * | 2014-04-01 | 2014-07-02 | 华为技术有限公司 | 业务链路选择控制方法以及设备 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1585369A (zh) * | 2003-08-21 | 2005-02-23 | 赵亮 | 信息化通信的系统及其方法 |
US8699417B2 (en) * | 2011-04-29 | 2014-04-15 | T-Mobile Usa, Inc. | Microwave backhaul arrangements |
-
2014
- 2014-09-01 WO PCT/CN2014/085690 patent/WO2016033729A1/zh active Application Filing
- 2014-09-01 CN CN201480022265.XA patent/CN105745874B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101291420A (zh) * | 2007-04-20 | 2008-10-22 | 华为技术有限公司 | 基于ims的iptv系统及内容保护服务功能实体和方法 |
CN103338150A (zh) * | 2013-07-19 | 2013-10-02 | 中国人民解放军信息工程大学 | 信息通信网络体系结构建立方法、装置、服务器和路由器 |
CN103905447A (zh) * | 2014-04-01 | 2014-07-02 | 华为技术有限公司 | 业务链路选择控制方法以及设备 |
Non-Patent Citations (1)
Title |
---|
Service Function Chaining (SFC) Architecturedraft-quinn-sfc-arch-05.txt;P. Quinn, Ed等;《IETF草案,Network Working Group Internet-Draft》;20140505;正文第1、2.3、4.1、4.3、4.5-4.6、6、7节,图3 * |
Also Published As
Publication number | Publication date |
---|---|
WO2016033729A1 (zh) | 2016-03-10 |
CN105745874A (zh) | 2016-07-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105745874B (zh) | 一种确定服务功能路径的方法及装置 | |
KR102555671B1 (ko) | 패킷 처리 방법, 관련 기기 및 컴퓨터 저장 매체 | |
EP2716097B1 (en) | Implementing epc in a cloud computer with openflow data plane | |
US10547541B2 (en) | Route determining method, and corresponding apparatus and system | |
CN108141416B (zh) | 一种报文处理方法、计算设备以及报文处理装置 | |
EP2831733B1 (en) | Implementing epc in a cloud computer with openflow data plane | |
CN107005439B (zh) | 用于在线服务链接的被动性能测量 | |
US9167501B2 (en) | Implementing a 3G packet core in a cloud computer with openflow data and control planes | |
KR101900536B1 (ko) | Openflow 데이터 플레인 및 컨트롤 플레인을 갖는 클라우드 컴퓨터에서의 3g 패킷 코어의 구현 | |
CN107113637B (zh) | 用于在软件定义网络中管理分组的方法和模块 | |
CN107579923B (zh) | 一种sdn网络的链路负载均衡方法和sdn控制器 | |
EP3140964B1 (en) | Implementing a 3g packet core in a cloud computer with openflow data and control planes | |
US10116567B1 (en) | Load balancing for multipath group routed flows by re-routing the congested route | |
CN110191064B (zh) | 流量负载均衡方法、装置、设备、系统及存储介质 | |
EP4181477A1 (en) | Path selection in software defined wide area networks | |
US20150319092A1 (en) | CONTENT AWARE WI-FI QoS | |
CN105519058B (zh) | 控制器、服务节点和数据包转发方法 | |
CN112702221B (zh) | Bgp异常路由监测方法和装置 | |
WO2013142282A1 (en) | Routing a data packet in a communication network | |
WO2015039616A1 (zh) | 一种报文处理方法及设备 | |
CN105376174A (zh) | 执行lte/epc中基于服务链的策略的方法与设备 | |
CN108512771A (zh) | 一种数据流负载分担的方法和设备 | |
Yazici et al. | Policy broker-centric traffic classifier architecture for deep packet inspection systems with route asymmetry | |
EP3131344A1 (en) | Method and system for discovery of access aggregation points for bonding approaches in a telecommunication network | |
CN117938744A (zh) | 业务管理系统运行状态的调整方法、装置、设备及介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |