WO2014186963A1 - 业务路由系统、设备和方法 - Google Patents

业务路由系统、设备和方法 Download PDF

Info

Publication number
WO2014186963A1
WO2014186963A1 PCT/CN2013/076148 CN2013076148W WO2014186963A1 WO 2014186963 A1 WO2014186963 A1 WO 2014186963A1 CN 2013076148 W CN2013076148 W CN 2013076148W WO 2014186963 A1 WO2014186963 A1 WO 2014186963A1
Authority
WO
WIPO (PCT)
Prior art keywords
service
flow
information
business
programmable
Prior art date
Application number
PCT/CN2013/076148
Other languages
English (en)
French (fr)
Inventor
王岩
胡伟华
蒋铭
钱涛
Original Assignee
华为技术有限公司
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 华为技术有限公司 filed Critical 华为技术有限公司
Priority to EP13885260.3A priority Critical patent/EP2993835B1/en
Priority to CN201380004576.9A priority patent/CN104322019B/zh
Priority to PCT/CN2013/076148 priority patent/WO2014186963A1/zh
Publication of WO2014186963A1 publication Critical patent/WO2014186963A1/zh
Priority to US14/947,776 priority patent/US20160080253A1/en

Links

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/38Flow based routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/64Hybrid switching systems
    • H04L12/6418Hybrid transport
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • H04L45/036Updating the topology between route computation elements, e.g. between OpenFlow controllers
    • H04L45/037Routes obligatorily traversing service-related nodes
    • H04L45/0377Routes obligatorily traversing service-related nodes for service chaining
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2441Traffic characterised by specific attributes, e.g. priority or QoS relying on flow classification, e.g. using integrated services [IntServ]

Landscapes

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

Abstract

本发明提供业务路由系统、设备和方法。该系统包括:第一业务流分类器、业务路径控制器、h个可编程交换机和m个业务使能器,第一业务流分类器与业务路径控制器之间具有第一接口,业务路径控制器与h个可编程交换机之间分别具有第二接口,m个业务使能器中每个业务使能器与h个可编程交换机之一相连接,h个可编程交换机之间互连。本发明实施例中,通过第一业务流分类器生成包括业务流类别信息的通知消息,业务路径控制器根据通知消息生成与k个业务使能器相连的i个可编程交换机对应的第一转发表项,i个可编程交换机分别根据对应的第一转发表项转发业务流的数据包,使得k个业务使能器按照顺序处理业务流的数据包,能够提升网络可靠性。

Description

业务路由系统、 设备和方法 技术领域
本发明涉及通信领域, 并且具体地, 涉及业务路由系统、 设备和方法。 背景技术
由于部署增值业务有助于对移动网关的 Gi接口数据进行更精准的管道 经营以及提升用户的体验效果, 因此一些主流运营商已经采用串联各种增值 业务服务器的方案来部署增值业务。 具体来说, 在移动网关与服务器之间串 联各种增值业务服务器, 使得所有业务流均流经每个增值业务服务器。 这些 增值业务服务器也可以称为业务使能器( Service Enabler ), 可以包括有视频 优化器、 业务流压缩器、 数据緩存器、 深度报文探测器和超文本传输协议 ( HyperText Transfer Protocol, HTTP ) 头增强器等。
然而, 在这种部署方案中, 由于所有业务使能器串联在移动网关与服务 器之间,那么任何一个业务使能器故障,会导致用户连基本业务都无法使用。 而且每个业务使能器不管是否需要都要对业务流进行处理,增加了业务流的 处理时间。 可见, 这种方案不仅会降低网络可靠性, 而且大大增加了网络时 延。 发明内容
本发明实施例提供业务路由系统、 设备和方法, 能够提升网络可靠性, 并减小网络时延。
第一方面, 提供了一种业务路由系统, 包括: 第一业务流分类器、 业务 路径控制器、 h个可编程交换机和 m个业务使能器, 所述第一业务流分类器 与所述业务路径控制器之间具有第一接口,所述业务路径控制器与所述 h个 可编程交换机之间分别具有第二接口, 所述第一业务流分类器与所述 h个可 编程交换机中第 j个可编程交换机之间具有第三接口,所述 m个业务使能器 中每个业务使能器与所述 h个可编程交换机之一相连接, 所述 h个可编程交 换机之间互连; 其中, 所述第一业务流分类器, 用于根据业务流生成通知消 息, 所述通知消息包括所述业务流对应的业务流类别信息, 所述业务流类别 信息用于指示所述业务流对应的第一业务链,所述第一业务链由所述 m个业 务使能器中的 k个业务使能器组成, 其中在所述第一业务链中所述 k个业务 使能器按照第一顺序排列; 所述业务路径控制器, 用于通过所述第一接口从 所述第一业务流分类器接收所述通知消息, ^据所述通知消息生成 i个可编 程交换机中每个可编程交换机对应的第一转发表项, 所述 i个可编程交换机 与所述 k个业务使能器中的至少一个相连接, 所述 i个可编程交换机是从所 述 h个可编程交换机中选择的;所述 i个可编程交换机的每个可编程交换机, 用于通过所述第二接口从所述业务路径控制器接收所述每个可编程交换机 对应的第一转发表项, 并根据所述每个可编程交换机对应的第一转发表项转 发所述业务流的数据包, 以便所述 k个业务使能器按照所述第一顺序处理所 述业务流的数据包; 其中, h、 m和 j均为正整数, k为小于或等于 m的正 整数, i为小于或等于 h的正整数。
结合第一方面, 在第一种可能的实现方式中, 2所述通知消息还包括所 述业务流对应的业务流信息, 所述业务流信息包括以下至少一种: 源媒体接 入控制 MAC地址、 目的 MAC地址、 源网际协议 IP地址、 目的 IP地址、 源端口号、 目的端口号和协议类型。
结合第一方面的第一种可能的实现方式, 在第二种可能的实现方式中, 所述业务流类别信息包括第一业务链表, 所述第一业务链表用于指示所述第 一业务链;
所述业务路径控制器, 具体用于: 根据所述业务路由系统的拓朴信息、 所述第一业务链表以及所述业务流信息生成所述 i个可编程交换机中每个可 编程交换机对应的第一转发表项, 所述拓朴信息用于指示所述业务路由系统 的内部拓朴结构以及所述业务路由系统的外部连接关系。
结合第一方面的第一种可能的实现方式, 在第三种可能的实现方式中, 所述业务流类别信息包括第一应用类别标识, 所述第一应用类别标识用于指 示所述业务流的应用类别;
所述业务路径控制器, 具体用于: 根据所述第一应用类别标识以及至少 一个应用类别标识与至少一个业务链表之间的对应关系,确定所述第一应用 类别标识对应的第一业务链表, 所述第一业务链表用于指示所述第一业务 链; 根据所述业务路由系统的拓朴信息、 所述第一业务链表以及所述业务流 信息,生成所述 i个可编程交换机中每个可编程交换机对应的第一转发表项, 所述拓朴信息用于指示所述业务路由系统的内部拓朴结构以及所述业务路 由系统的外部连接关系。
结合第一方面, 在第四种可能的实现方式中, 所述业务流类别信息包括 第一应用类别标识, 所述第一应用类别标识用于指示所述业务流的应用类 另^
所述业务路径控制器, 具体用于: 根据所述第一应用类别标识以及至少 一个应用类别标识与至少一个业务链表之间的对应关系,确定所述第一应用 类别标识对应的第一业务链表, 所述第一业务链表用于指示所述第一业务 链; 根据所述业务路由系统的拓朴信息、 所述第一业务链表以及所述第一应 用类别标识, 生成所述 i个可编程交换机中每个可编程交换机对应的第一转 发表项, 其中所述第一转发表项包括所述第一应用类别标识, 所述拓朴信息 用于指示所述业务路由系统的内部拓朴结构以及所述业务路由系统的外部 连接关系。
结合第一方面的第四种可能的实现方式, 在第五种可能的实现方式中, 所述第一业务流分类器还用于根据所述第一应用类别标识对所述业务流的 数据包进行封装。
结合第一方面的第三种可能的实现方式至第五种可能的实现方式中任 一实现方式, 在第六种可能的实现方式中, 所述业务路径控制器还用于: 在 生成所述 i个可编程交换机中每个可编程交换机对应的第一转发表项之前, 接收业务路由规则信息, 所述业务路由规则信息包括所述至少一个应用类别 标识、 所述至少一个业务链表以及所述对应关系。
结合第一方面的第三种可能的实现方式至第五种可能的实现方式中任 一实现方式, 在第七种可能的实现方式中, 所述业务路径控制器具体用于: 在生成所述 i 个可编程交换机中每个可编程交换机对应的第一转发表项之 前, 接收业务路由规则信息, 所述业务路由规则信息用于指示对所述对应关 系进行调整处理, 所述调整处理包括以下至少一种: 添加, 删除, 修改; 根 据所述业务路由规则信息, 对所述对应关系进行调整处理。
结合第一方面的第六种可能的实现方式或第七种可能的实现方式,在第 八种可能的实现方式中, 所述第一业务流分类器还用于获取所述业务路由规 则信息,所述业务路径控制器具体用于通过所述第一接口从所述第一业务流 分类器接收所述业务路由规则信息; 或者, 所述业务路径控制器具体用于从 策略与计费规则功能 PCRF设备接收所述业务路由规则信息。 结合第一方面的第八种可能的实现方式, 在第九种可能的实现方式中, 所述第一业务流分类器具体用于从所述 PCRF设备接收所述业务路由规则信 息。
结合第一方面或第一方面的第一种可能的实现方式或第九种可能的实 现方式, 在第十种可能的实现方式中, 所述第 j个可编程交换机, 用于在所 述第一业务流分类器根据业务流生成所述通知消息之前,通过所述第三接口 向所述第一业务流分类器发送所述业务流的前 n个数据包, n为正整数; 所 述第一业务流分类器, 具体用于根据所述前 n个数据包确定所述通知消息。
结合第一方面的第十种可能的实现方式, 在第十一种可能的实现方式 中, 所述第 j个可编程交换机, 还用于: 在通过所述第三接口向所述第一业 务流分类器发送所述前 n个数据包之前, 接收所述业务流的第 1个数据包; 所述业务路径控制器, 还用于: 通过所述第二接口从所述第 j个可编程交换 机接收所述第 1个数据包的信息, 并在确定需要将所述第 1个数据包需要转 发给所述第一业务流分类器的情况下,根据所述第 1个数据包的信息生成第 二转发表项, 其中, 所述第二转发表项用于指示向所述第一业务流分类器转 发所述业务流的数据包; 所述第 j个可编程交换机, 还用于: 通过所述第二 接口从所述业务路径控制器接收所述第二转发表项; 所述第 j个可编程交换 机, 具体用于根据所述第二转发表项通过所述第三接口向所述第一业务流分 类器转发所述前 n个数据包。
结合第一方面的第十一种可能的实现方式,在第十二种可能的实现方式 中, 所述第 j个可编程交换机与移动网关之间具有第四接口; 所述第 j个可 编程交换机, 具体用于通过所述第四接口从所述移动网关接收所述第一个数 据包。
结合第一方面或第一方面的第一种可能的实现方式或第十二种可能的 实现方式, 在第十三种可能的实现方式中, 所述第一业务流分类器位于在移 动网关与所述第 j个可编程交换机之间; 或者, 所述第一业务流分类器位于 移动网关内部。
结合第一方面或第一方面的第一种可能的实现方式或第十三种可能的 实现方式, 在第十四种可能的实现方式中, 所述系统还包括第二业务流分类 器; 所述第二业务流分类器与所述业务路径控制器之间具有所述第一接口, 所述第二业务流分类器与所述 h个可编程交换机中的第 p个可编程交换机之 间具有所述第三接口, p为小于或等于 h的正整数。
第二方面, 提供了一种业务路径控制器, 包括: 接收单元、 生成单元和 发送单元, 所述接收单元与第一业务流分类器之间具有第一接口; 所述接收 单元, 用于通过所述第一接口从所述第一业务流分类器接收通知消息, 通知 消息包括业务流对应的业务流类别信息, 所述业务流类别信息用于指示所述 业务流对应的第一业务链, 所述第一业务链由一个或多个按照第一顺序排列 的业务使能器组成; 所述生成单元, 用于 ^据所述通知消息生成一个或多个 可编程交换机分别对应的第一转发表项; 所述发送单元, 用于向所述一个或 多个可编程交换机发送每个可编程交换机对应的第一转发表项, 以便所述可 编程交换机根据所述可编程交换机对应的第一转发表项转发所述业务流的 数据包, 以使所述一个或多个业务使能器按照所述第一顺序处理所述业务流 的数据包。
结合第二方面, 在第一种可能的实现方式中, 所述发送单元与 h个可编 程交换机之间具有第二接口;所述第一业务链由 m个业务使能器中的 k个业 务使能器组成,其中在所述第一业务链中所述 k个业务使能器按照第一顺序 排列;
所述生成单元具体用于根据所述通知消息生成 i个可编程交换机中每个 可编程交换机对应的第一转发表项, 所述 i个可编程交换机与所述 k个业务 使能器中的至少一个相连接, 所述 i个可编程交换机是从所述 h个可编程交 换机中选择的; 其中, h和 m为正整数, k为小于或等于 m的正整数, i为 小于或等于 h的正整数。
结合第二方面的第一种可能的实现方式, 在第二种可能的实现方式中, 所述通知消息还包括所述业务流对应的业务流信息, 所述业务流信息包括以 下至少一种: 源媒体接入控制 MAC地址、 目的 MAC地址、 源网际协议 IP 地址、 目的 IP地址、 源端口号、 目的端口号和协议类型。
结合第二方面的第二种可能的实现方式, 在第三种可能的实现方式中, 所述业务流类别信息包括第一业务链表, 所述第一业务链表用于指示所述第 一业务链; 所述生成单元, 具体用于: 根据所述业务路径控制器所在的业务 路由系统的拓朴信息、 所述第一业务链表和所述业务流信息生成所述 i个可 编程交换机中每个可编程交换机对应的第一转发表项。
结合第二方面的第二种可能的实现方式, 在第四种可能的实现方式中, 所述业务流类别信息包括第一应用类别标识,所述第一应用类别标识用于指 示所述业务流的应用类别;
所述生成单元, 具体用于: 根据所述第一应用类别标识以及至少一个应 用类别标识与至少一个业务链表之间的对应关系,确定所述第一应用类别标 识对应的第一业务链表, 所述第一业务链表用于指示所述第一业务链; 根据 所述业务路由系统的拓朴信息、 所述第一业务链表以及所述业务流信息, 生 成所述 i个可编程交换机中每个可编程交换机对应的第一转发表项。
结合第二方面的第一种可能的实现方式, 在第五种可能的实现方式中, 所述业务流类别信息包括第一应用类别标识;
所述生成单元, 具体用于: 根据所述第一应用类别标识以及至少一个应 用类别标识与至少一个业务链表之间的对应关系,确定所述第一应用类别标 识对应的第一业务链表, 所述第一业务链表用于指示所述第一业务链;
根据所述业务路由系统的拓朴信息、所述第一业务链表以及所述第一应 用类别标识, 生成所述 i个可编程交换机中每个可编程交换机对应的第一转 发表项, 其中所述第一转发表项包括所述第一应用类别标识。
结合第二方面的第四种可能的实现方式或第五种可能的实现方式,在第 六种可能的实现方式中, 所述接收单元, 还用于: 在所述生成单元生成所述 i 个可编程交换机中每个可编程交换机对应的第一转发表项之前, 接收业务 路由规则信息, 所述业务路由规则信息包括所述至少一个应用类别标识、 所 述至少一个业务链表以及所述对应关系。
结合第二方面的第四种可能的实现方式或第五种可能的实现方式,在第 七种可能的实现方式中, 所述接收单元, 还用于在所述生成单元生成所述 i 个可编程交换机中每个可编程交换机对应的第一转发表项之前,接收业务路 由规则信息, 所述业务路由规则信息用于指示对所述对应关系进行调整处 理, 所述调整处理包括以下至少一种: 添加, 删除, 爹改; 所述生成单元, 还用于根据所述业务路由规则信息, 对所述对应关系进行调整处理。
结合第二方面的第六种可能的实现方式或第七种可能的实现方式,在第 八种可能的实现方式中, 所述接收单元具体用于通过所述第一接口从所述第 一业务流分类器接收所述业务路由规则信息; 或者, 所述接收单元具体用于 从策略与计费规则功能 PCRF设备接收所述业务路由规则信息。
结合第二方面的第一种可能的实现方式至第八种可能的实现方式中任 一实现方式, 在第九种可能的实现方式中, 所述接收单元, 还用于通过所述 第二接口从所述 h个可编程交换机中的第 j个可编程交换机接收所述业务流 的数据包的信息, 其中所述第 j个可编程交换机与所述第一业务流分类器之 间具有第三接口; 所述生成单元, 还用于当需要将所述业务流的数据包需要 转发给所述第一业务流分类器时,根据所述业务流的数据包的信息生成第二 转发表项, 其中, 所述第二转发表项用于指示向所述第一业务流分类器转发 所述业务流的数据包; 所述发送单元, 还用于通过所述第二接口向所述第 j 个可编程交换机发送所述第二转发表项, 以便所述第 j个可编程交换机根据 所述第二转发表项向所述第一业务流分类器转发所述业务流的数据包, 所述 第一业务流分类器^ ^据所述业务流的数据包生成所述通知消息。
结合第二方面的第九种可能的实现方式, 在第十种可能的实现方式中, 在所述第 j个可编程交换机中没有所述业务流的数据包对应的转发表项, 或 者, 在所述第 j个可编程交换机中所述业务流的数据包对应的转发表项指示 所述第 j个可编程交换机向所述业务路径控制器发送所述业务流的数据包的 信息。
结合第二方面或第二方面的第一种可能的实现方式至第十种可能的实 现方式中任一实现方式, 在十一种可能的实现方式中, 所述接收单元还与第 二业务流分类器之间具有所述第一接口。
第三方面, 提供了一种业务流分类器, 包括: 生成单元和发送单元, 所 述发送单元与业务路径控制器之间具有第一接口; 所述生成单元, 用于根据 业务流生成通知消息, 所述通知消息包括所述业务流对应的业务流类别信 息, 所述业务流类别信息用于指示所述业务流对应的第一业务链, 所述第一 业务链由一个或多个按照第一顺序排列的业务使能器组成; 所述发送单元, 用于通过所述第一接口向所述业务路径控制器发送所述通知消息。
结合第三方面,在第一种可能的实现方式中,所述第一业务链由 m个业 务使能器中的 k个业务使能器组成, 其中在所述第一业务链中所述 k个业务 使能器按照第一顺序排列, m为正整数, k为小于或等于 m的正整数。
结合第三方面或第三方面的第一种可能的实现方式,在第二种可能的实 现方式中, 所述通知消息还包括所述业务流对应的业务流信息, 所述业务流 信息包括以下至少一种: 源媒体接入控制 MAC地址、 目的 MAC地址、 源 网际协议 IP地址、 目的 IP地址、 源端口号、 目的端口号和协议类型; 所述业务流类别信息包括第一业务链表, 所述第一业务链表用于指示所 述第一业务链; 或者, 所述业务流类别信息包括第一应用类别标识, 所述第 一应用类别标识用于指示所述业务流的应用类别。
结合第三方面或第三方面的第一种可能的实现方式,在第三种可能的实 现方式中, 还包括封装单元; 所述业务流类别信息包括第一应用类别标识, 所述第一应用类别标识用于指示所述业务流的应用类别, 所述第一应用类别 标识与所述第一业务链相对应; 所述封装单元, 用于根据所述第一应用类别 标识, 对所述业务流的数据包进行封装。
结合第三方面或第三方面的第一种可能的实现方式或第二种可能的实 现方式或第三种可能的实现方式, 在第四种可能的实现方式中, 还包括接收 单元, 所述接收单元与 h个可编程交换机中的第 j个可编程交换机之间具有 第三接口, h为正整数, j为小于或等于 h的正整数; 所述接收单元, 用于通 过所述第三接口从所述第 j个可编程交换机接收所述业务流的数据包, n为 正整数; 所述确定单元, 具体用于根据所述业务流的数据包生成所述通知消 息。
第四方面, 提供一种业务路由方法, 包括: 从第一业务流分类器接收通 知消息, 所述通知消息包括业务流对应的业务流类别信息, 所述业务流类别 信息用于指示所述业务流对应的第一业务链,所述第一业务链由一个或多个 按照第一顺序排列的业务使能器组成; 根据所述通知消息生成一个或多个可 编程交换机分别对应的第一转发表项; 向所述一个或多个可编程交换机发送 每个可编程交换机对应的第一转发表项, 以便所述可编程交换机根据所述可 编程交换机对应的第一转发表项转发所述业务流的数据包, 以使所述一个或 多个业务使能器按照所述第一顺序处理所述业务流的数据包。
结合第四方面,在第一种可能的实现方式中,所述第一业务链由 m个业 务使能器中的 k个业务使能器组成, 其中在所述第一业务链中所述 k个业务 使能器按照第一顺序排列;
根据所述通知消息生成一个或多个可编程交换机分别对应的第一转发 表项, 包括: 根据所述通知消息生成 i个可编程交换机中每个可编程交换机 对应的第一转发表项, 所述 i个可编程交换机与所述 k个业务使能器中的至 少一个相连接, 所述 i个可编程交换机是从 h个可编程交换机中选择的; 其 中, h和 m为正整数, k为小于或等于 m的正整数, i为小于或等于 h的正 整数。
结合第四方面的第一种可能的实现方式, 在第二种可能的实现方式中, 所述通知消息还包括所述业务流对应的业务流信息, 所述业务流信息包括以 下至少一种: 源媒体接入控制 MAC地址、 目的 MAC地址、 源网际协议 IP 地址、 目的 IP地址、 源端口号、 目的端口号和协议类型。
结合第四方面的第二种可能的实现方式, 在第三种可能的实现方式中, 所述业务流类别信息包括第一业务链表, 所述第一业务链表用于指示所述第 一业务链;
所述根据所述通知消息生成 i个可编程交换机中每个可编程交换机对应 的第一转发表项, 包括: 根据业务路由系统的拓朴信息、 所述第一业务链表 以及所述业务流信息, 生成所述 i个可编程交换机中每个可编程交换机对应 的第一转发表项。
结合第四方面的第二种可能的实现方式, 在第四种可能的实现方式中, 所述业务流类别信息包括第一应用类别标识, 所述第一应用类别标识用于指 示所述业务流的应用类别;
所述根据所述通知消息生成 i个可编程交换机中每个可编程交换机对应 的第一转发表项, 包括: 根据所述第一应用类别标识以及至少一个应用类别 标识与至少一个业务链表之间的对应关系,确定所述第一应用类别标识对应 的第一业务链表, 所述第一业务链表用于指示所述第一业务链; 根据业务路 由系统的拓朴信息、 所述第一业务链表和所述业务流信息, 生成所述 i个可 编程交换机中每个可编程交换机对应的第一转发表项。
结合第四方面的第一种可能的实现方式, 在第五种可能的实现方式中, 所述业务流类别信息包括第一应用类别标识;
所述根据所述通知消息生成 i个可编程交换机中每个可编程交换机对应 的第一转发表项, 包括: 根据所述第一应用类别标识以及至少一个应用类别 标识与至少一个业务链表之间的对应关系,确定所述第一应用类别标识对应 的第一业务链表, 所述第一业务链表用于指示所述第一业务链; 根据所述业 务路由系统的拓朴信息、 所述第一业务链表以及所述第一应用类别标识, 生 成所述 i个可编程交换机中每个可编程交换机对应的第一转发表项, 其中所 述第一转发表项包括所述第一应用类别标识。
结合第四方面的第四种可能的实现方式或第五种可能的实现方式,在第 六种可能的实现方式中, 还包括: 在生成所述 i个可编程交换机中每个可编 程交换机对应的第一转发表项之前, 接收业务路由规则信息, 所述业务路由 规则信息包括所述至少一个应用类别标识、所述至少一个业务链表以及所述 对应关系。
结合第四方面的第四种可能的实现方式或第五种可能的实现方式,在第 七种可能的实现方式中, 还包括: 在生成所述 i个可编程交换机中每个可编 程交换机对应的第一转发表项之前, 接收业务路由规则信息, 所述业务路由 规则信息用于指示对所述对应关系进行调整处理,所述调整处理包括以下至 少一种: 添加, 删除, 修改; 根据所述业务路由规则信息, 对所述对应关系 进行调整处理。
结合第四方面的第六种可能的实现方式或第七种可能的实现方式,在第 八种可能的实现方式中, 所述接收业务路由规则信息, 包括: 从所述第一业 务流分类器接收所述业务路由规则信息;或者,从策略与计费规则功能 PCRF 设备接收所述业务路由规则信息。
结合第四方面的第一种可能的实现方式至第八种可能的实现方式中任 一实现方式, 在第九种可能的实现方式中, 还包括: 从所述 h个可编程交换 机中的第 j个可编程交换机接收所述业务流的数据包的信息, j为小于或等 于 h的正整数; 在确定需要将所述业务流的数据包需要转发给所述第一业务 流分类器的情况下, 根据所述业务流的数据包的信息生成第二转发表项, 其 中, 所述第二转发表项用于指示向所述第一业务流分类器转发所述业务流的 数据包; 向所述第 j个可编程交换机发送所述第二转发表项, 以便所述第 j 个可编程交换机根据所述第二转发表项向所述第一业务流分类器转发所述 业务流的数据包, 所述第一业务流分类器^^据所述业务流的数据包生成所述 通知消息。
结合第四方面的第九种可能的实现方式, 在第十种可能的实现方式中, 在所述可编程交换机中所述业务流的数据包没有对应的转发表项, 或者, 在 所述可编程交换机中所述业务流的数据包对应的转发表项指示所述可编程 交换机向业务路径控制器发送所述业务流的数据包的信息。
第五方面,提供了一种业务路由方法, 包括:根据业务流生成通知消息, 所述通知消息包括所述业务流对应的业务流类别信息, 所述业务流类别信息 用于指示所述业务流对应的第一业务链, 所述第一业务链由由一个或多个按 照第一顺序排列的业务使能器组成; 向业务路径控制器发送所述通知消息。 结合第五方面,在第一种可能的实现方式中,所述第一业务链由 m个业 务使能器中的 k个业务使能器组成, 其中在所述第一业务链中所述 k个业务 使能器按照第一顺序排列, m均为正整数, k为小于或等于 m的正整数。
结合第五方面或第五方面的第一种可能的实现方式,在第二种可能的实 现方式中, 所述通知消息还包括所述业务流对应的业务流信息, 所述业务流 信息包括以下至少一种: 源媒体接入控制 MAC地址、 目的 MAC地址、 源 网际协议 IP地址、 目的 IP地址、 源端口号、 目的端口号和协议类型; 所述 业务流类别信息包括第一业务链表,所述第一业务链表用于指示所述第一业 务链; 或者, 所述业务流类别信息包括第一应用类别标识, 所述第一应用类 别标识用于指示所述业务流的应用类别。
结合第五方面或第五方面的第一种可能的实现方式,在第三种可能的实 现方式中, 所述业务流类别信息包括第一应用类别标识, 所述第一应用类别 标识用于指示所述业务流的应用类别;
所述方法还包括: 根据所述第一应用类别标识, 对所述业务流的数据包 进行封装。
结合第五方面或第五方面的第一种可能的实现方式或第五方面的第二 种可能的实现方式或第三种可能的实现方式, 在第四种可能的实现方式中, 还包括: 从 h个可编程交换机中的第 j个可编程交换机接收所述业务流的数 据包, n为正整数;
所述根据业务流生成通知消息, 包括: 根据所述业务流的数据包生成通 知消息。
本发明实施例中,通过第一业务流分类器生成包括业务流类别信息的通 知消息,其中业务流类别信息用于指示业务流对应的由 k个业务使能器组成 的第一业务链, 业务路径控制器根据通知消息生成与 k个业务使能器相连的 i个可编程交换机分别对应的第一转发表项, i个可编程交换机分别根据各自 对应的第一转发表项转发业务流的数据包,使得 k个业务使能器按照第一顺 序处理业务流的数据包, 从而能够提升网络可靠性, 并减小网络时延。 附图说明
为了更清楚地说明本发明实施例的技术方案, 下面将对本发明实施例中 所需要使用的附图作筒单地介绍, 显而易见地, 下面所描述的附图仅仅是本 发明的一些实施例, 对于本领域普通技术人员来讲, 在不付出创造性劳动的 前提下, 还可以根据这些附图获得其他的附图。
图 1是根据本发明实施例的业务路由系统的示意框图。
图 2是根据本发明一个实施例的网络架构的示意图。
图 3是根据本发明另一实施例的网络架构的示意图
图 4是根据本发明另一实施例的网络架构的示意图。
图 5是根据本发明另一实施例的网络架构的示意图。
图 6是根据本发明另一实施例的业务路由系统的示意图。
图 7是根据本发明另一实施例的网络架构的示意图。
图 8是根据本发明另一实施例的网络架构的示意图。
图 9是根据本发明另一实施例的网络架构的示意图。
图 10是根据本发明一个实施例的业务路径控制器的示意框图。
图 11是根据本发明一个实施例的业务流分类器的示意框图。
图 12是根据本发明一个实施例的业务路由方法的示意性流程图。
图 13是根据本发明一个实施例的业务路由方法的示意性流程图。
图 14是根据本发明一个实施例的业务路由方法的过程的示意性流程图。 图 15是根据本发明另一实施例的业务路由方法的过程的示意性流程图。 图 16是根据本发明另一实施例的业务路由方法的过程的示意性流程图。 图 17是根据本发明另一实施例的业务路径控制器的示意框图。
图 18是根据本发明另一实施例的业务流分类器的示意框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行 清楚、 完整地描述, 显然, 所描述的实施例是本发明的一部分实施例, 而不 是全部实施例。 基于本发明中的实施例, 本领域普通技术人员在没有做出创 造性劳动的前提下所获得的所有其他实施例, 都应属于本发明保护的范围。
本发明的技术方案, 可以应用于各种通信系统, 例如: 全球移动通信系 统 ( Global System of Mobile communication, GSM ),码分多址 ( Code Division Multiple Access , CDMA ) 系统, 宽带码分多址 ( Wideband Code Division Multiple Access Wireless , WCDMA ), 通用分组无线业务 ( General Packet Radio Service, GPRS ), 长期演进( Long Term Evolution, LTE )等。
业务路由系统可以包括第一业务流分类器(Service Traffic Classsifier, STC )、 业务路径控制器(Service Path Controller, SPC ), h个可编程交换机 和 m个业务使能器。
图 1是根据本发明实施例的业务路由系统的示意框图。 为了便于描述, 图 1中示出了 3个可编程交换机和 4个业务使能器, 但本发明实施例中, 可 编程交换机的数目和业务使能器的数目可以更多或更少。
图 1的系统 100包括第一 STC 110、 SPC 120、 可编程交换机 130a、 可 编程交换机 130b、可编程交换机 130c、业务使能器 140a、业务使能器 140b、 业务使能器 140c和业务使能器 140d。
第一 STC 110与 SPC 120之间具有第一接口, SPC 120与可编程交换机 130a至 130c之间分别具有第二接口,第一 STC 110与可编程交换机 130a至 130中的第 j个可编程交换机之间具有第三接口, 业务使能器 140a至 140d 分别与可编程交换机 130a至 130c之一相连接, 可编程交换机 130a、 130b 与 130c之间互连。 其中, i、 j和 k为正整数, i和 j均小于或等于系统 100 中可编程交换机的数目, k小于或等于系统 100业务使能器的数目。
在图 1中, 以第一 STC 110与可编程交换机 130a之间具有第三接口, 并以业务使能器 140a和 140b与可编程交换机 130b相连接,业务使能器 140c 和 140d与可编程交换机 130c相连接为例进行说明。
第一 STC 110根据业务流生成通知消息,该通知消息包括业务流对应的 业务流类别信息, 业务流类别信息用于指示业务流对应的第一业务链
( Service Chain ) , 第一业务链由 m个业务使能器中的 k个业务使能器组成, 其中在第一业务链中 k个业务使能器按照第一顺序排列。 SPC 120通过第一 接口从第一 STC 110接收通知消息, 根据通知消息生成 i个可编程交换机中 每个可编程交换机对应的第一转发表项, i个可编程交换机与 k个业务使能 器中的至少一个相连接, i个可编程交换机是从可编程交换机 130a至 130c 中选择的。 i个可编程交换机中的每个可编程交换机通过第二接口从 SPC 120 接收每个可编程交换机对应的第一转发表项, 并根据每个可编程交换机对应 的第一转发表项转发业务流的数据包, 以便 k个业务使能器按照第一顺序处 理业务流的数据包。 本发明实施例中,第一 STC 110与 SPC 120之间可以的第一接口可以称 为 Sts接口。
可编程交换机 130a、 130b或 130c可以是指其转发表能够通过外部开放 接口由外部控制器编程控制的交换机, 例如可以是开放流(OpenFlow )交换 机, SPC 120可以基于开放流协议与可编程交换机进行交互。 可编程交换机 130a, 130b和 130c之间可以是互连的, 例如, 可以是直接互连, 也可以通 过普通交换机网络互连。 在图 1中, 以可编程交换机 130a至 130c之间通过 普通交换机网络互连为例进行说明。
各个业务使能器可以指能够提供增值业务的网元, 例如可以是视频优化 器、 防火墙、 业务流压缩器、 网络(Web )緩存器、 深度报文探测器或 HTTP 头增强器等。
上述业务流可以是上行业务流, 也可以指下行业务流, 本发明实施例对 此不做限定。
第一 STC 110可以对业务流进行解析, 确定业务流类别信息。 由于业务 流类别信息用于指示业务流对应的第一业务链, 因此为了使业务流按照第一 顺序经过第一业务链上的业务使能器, SPC 120可以 ^据通知消息确定业务 流需要经过的 i个可编程交换机, 并生成 i个可编程交换机中每个可编程交 换机对应的第一转发表项。每个可编程交换机对应的第一转发表项定义了该 业务流在该可编程交换机上的具体转发规则。 例如, 如果可编程交换机为 OpenFlow交换机, 第一转发表项可以是 OpenFlow交换机上的流表项。应理 解, 本发明实施例中, 上述第一转发表项可以包括多个具体的转发表项。
SPC 120可以分别通过第二接口向 i个可编程交换机发送其对应的第一 转发表项。 i 个可编程交换机中的每个可编程交换机可以根据其对应的第一 转发表项转发业务流的数据包,从而使得 k个业务使能器按照第一顺序处理 业务流的数据包。
例如, 假设第一业务链由业务使能器 140a和 140c组成, 且业务使能器 140a排在业务使能器 140c之前, 那么为了使业务流经过第一业务链, 就需 要经过可编程交换机 130b和 130c。 SPC 120可以确定可编程交换机 130b对 应的第一转发表项以及可编程交换机 130c对应的第一转发表项, 并分别向 这 2个可编程交换机发送它们各自对应的第一转发表项。可编程交换机 130a 可以根据其对应的第一转发表项, 对业务流的数据包进行转发, 使其到达业 务使能器 140a。 可编程交换机 130a可以将该数据包转发给可编程交换机 130b, 由可编程交换机 130b根据自己对应的第一转发表项将数据包转发为 业务使能器 140a。 业务使能器 140a处理后将处理后的数据包返回可编程交 换机 130b。然后可编程交换机 130b将业务使能器 140a处理后的数据包进行 转发, 使得业务使能器 140a处理后的数据包到达业务使能器 140c。 即, 可 编程交换机 130b可以将业务使能器 140a处理后的数据包转发给可编程交换 机 130c, 由可编程交换机 130c将业务使能器 140a处理后的数据包转发给业 务使能器 140c, 业务使能器 140c处理后将处理后的数据包返回可编程交换 机 130c。 可编程交换机 130c可以继续转发业务使能器 140c返回的数据包。 比如, 如上所述, 如果业务流为上行业务流, 可编程交换机 130c可以将业 务使能器 140c返回的数据包转发给边界路由器。 如果业务流为下行业务流, 可编程交换机 130c可以将业务使能器 140c返回的数据包转发给移动网关。
由上述可知, 本发明实施例中, 通过第一业务流分类器生成包括业务流 类别信息的通知消息,其中业务流类别信息用于指示业务流对应的由 k个业 务使能器组成的第一业务链, 业务路径控制器根据通知消息生成与 k业务使 能器相连的 i个可编程交换机分别对应的第一转发表项, i个可编程交换机 分别根据各自对应的第一转发表项转发业务流,使得第一业务链的 k个使能 器按照第一顺序对业务流的数据包进行处理。 可见, 本发明实施例中, 并非 像现有技术中将各个业务使能器串联在业务流路径中, 而是将业务使能器连 接在可编程交换机上, 因此能够根据业务流选择相应的业务使能器, 从而能 够提升网络可靠性, 并能够减小网络时延和降低运营商成本。 此外, 本发明 实施例中, 通过将第一业务流分类器和业务路径控制器的功能分离, 筒化了 网络配置过程。 因此本发明实施例能够提升业务路由系统的转发性能和部署 的灵活性。
本发明实施例中,通过第一业务流分类器生成包括业务流类别信息的通 知消息,其中业务流类别信息用于指示业务流对应的由 k个业务使能器组成 的第一业务链, 业务路径控制器根据通知消息生成与 k个业务使能器相连的 i个可编程交换机分别对应的第一转发表项, i个可编程交换机分别根据各自 对应的第一转发表项转发业务流的数据包,使得 k个业务使能器按照第一顺 序处理业务流的数据包, 从而能够提升网络可靠性, 并减小网络时延。
可选地, 作为另一实施例, 通知消息还可以包括该业务流对应的业务流 信息, 业务流信息包括以下至少一种: 源媒体接入控制 ( Media Access Control, MAC )地址、 目的 MAC地址, 网际协议( Internet Protocol, IP )、 目的 IP地址、 源端口号、 目的端口号和协议类型。
例如, 如果 SPC 120只需要匹配目的 IP, 上述其他元素通配, 那么业务 流信息可以只包括目的 IP。
或者, 业务流信息可以包括上述多个元素的组合以及掩码。 通过掩码对 上述多个元素进行操作, 使得需要匹配的元素不变, 其它元素变为 0或 1。 例如, 业务流信息可以包括目的 IP、 源 MAC地址和目的 MAC地址以及掩 码。 SPC 120可以使用掩码对目的 IP、 源 MAC地址和目的 MAC地址进行 "或" 或者 "与" 操作, 使得目的 IP地址不变, 源 MAC地址和目的 MAC 地址均变为 0或 1。
在通知消息包括业务流信息的情况下, SPC 120可以根据业务流信息以 及业务流类别信息, 生成 i个可编程交换机各自对应的第一转发表项。
可选地, 作为一个实施例, 业务流类别信息可以包括第一业务链表, 所 述第一业务链表用于指示第一业务链。 SPC 120可以根据系统 100的拓朴信 息、 第一业务链表和业务流信息生成 i个可编程交换机中每个可编程交换机 对应的第一转发表项。上述系统 100的拓朴信息可以用于指示系统 100的内 部拓朴结构以及系统 100的外部连接关系。
第一业务链表可以包括 k个业务使能器的标识。 业务使能器的标识可以 是业务使能器的网际协议( Internet Protocol, IP )地址、媒体接入控制( Media Access Control, MAC )地址或其它符号组成的字符串。
在第一业务链表中, k个业务使能器的标识可以是按照上述第一顺序排 列的。
系统 100的拓朴信息可以包括系统 100的内部拓朴以及外部拓朴。例如, 内部拓朴可以包括第一 STC 110、 SPC 120、 h个可编程交换机和 m个业务 使能器之间的拓朴。外部拓朴可以包括系统 100与移动网关以及边界路由器 之间的拓朴。
例如, SPC 120可以根据系统 100的拓朴信息、 业务流信息所包括的 IP 七元组中至少一项以及第一业务链表, 直接生成第一转发表项。 或者, SPC 120可以根据第一业务链表和系统 100的拓朴信息确定第一业务路由模板, 其中第一业务路由模板与第一业务链相对应, 然后可以将业务流信息所包括 的 IP七元组中的至少一项填写到第一业务路由模板中, 从而生成第一转发 表项。
第一业务路由模板可以针对于上述第一业务链的转发规则的统一描述。 具体来说, 需要经过这 k个业务使能器处理的多个数据包的转发规则中共性 的部分可以作为第一业务路由模板。 这样, 对于需要经过这 k个业务使能器 处理的业务流的数据包, 将其 IP信息填写到第一业务路由模板中, 就可以 得到该业务流的每个数据包的具体转发规则, 即上述第一转发表项。
SPC 120可以将第一业务路由模板与第一业务链表的对应关系存储, 这 样, 如果 SPC 120再次收到第一业务链表, 可以通过第一业务链表查找到第 一业务路由模板, 将业务流的 IP信息填写到第一业务路由模板中就可以得 到 i个可编程交换机各自对应的转发表项, 从而能够提高确定转发表项的效 率。
上述系统 100的拓朴信息可以是预先存储在 SPC 120内部的。
可选地,作为另一实施例,业务流类别信息可以包括第一应用类别标识, 第一应用类别标识用于指示业务流的应用类别。 SPC 120可以根据第一应用 类别标识以及至少一个应用类别标识与至少一个业务链表之间的对应关系, 确定第一应用类别标识对应的第一业务链表, 第一业务链表用于指示第一业 务链; 根据系统 100的拓朴信息、 第一业务链表以及业务流信息, 生成 i个 可编程交换机中每个可编程交换机对应的第一转发表项。上述系统 100的拓 朴信息可以用于指示系统 100 的内部拓朴结构以及系统 100 的外部连接关 系。
例如, 业务流的应用类别可以包括视频应用、 对等连接 ( Peer to Peer , Ρ2Ρ )应用、 文件传输协议( File Transfer Protocol, FTP )或 Web浏览等类 另1 J。 不同应用类别的业务流可以经过不同的业务链上的业务使能器处理, 也 可以经过相同的业务链上的业务使能器处理。 即, 一条由业务使能器组成的 业务链可以对应于一种应用类别, 也可以对应于多种应用类别。 因此, 在上 述至少一个应用类别标识与至少一个业务链表之间的对应关系中,一个业务 链表可以对应于一个应用类别标识, 也可以对应于多个应用类别标识。 每个 业务链表可以用于指示由 m个业务使能器中至少一个业务使能器所组成的 业务链。
因此, 第一 STC 110确定第一应用类别标识后, 也就是确定了业务流对 应的第一业务链。
上述第一应用类别标识(Application Identity, App ID )可以是任何能够 用于区分类别的标识。 例如, 可以是 IP报文头域字段中的差分服务代码点 ( Differentiated Services Code Point, DSCP )字段或者 Flow Label字段, 也 可以是虚拟局域网 ( Virtual Local Area Network , VLAN )标签, 也可以是多 协议标签交换(Multi-Protocol Label Switching, MPLS )标签, 也可以是各 种隧道封装协议中的隧道 ID , 也可以是自定义的用于区分应用类别的标识, 等等。
SPC 120在接收到第一应用类别标识后, 可以将第一应用类别标识作为 索引,在上述至少一个应用类别标识与至少一个业务链表之间的对应关系中 查找到第一业务链表, 然后根据系统 100的拓朴信息和第一业务链表以及业 务流信息生成 i个可编程交换机中每个可编程交换机对应的第一转发表项。
可选地, 作为一种实施例, SPC 120还可以根据系统 100的拓朴信息和 上述对应关系中的至少一个业务链表生成至少一个业务路由模板, 并存储至 少一个业务路由模板,其中至少一个业务路由模板与至少一个业务链表可以 是——对应的。 这样, 在 SPC 120接收到第一应用类别标识后, 根据第一应 用类别标识查找到第一业务链表, 就可以确定第一业务链表对应的第一业务 路由模板。 可以直接将业务流信息所包括的 IP信息填写到第一业务路由模 板中,从而得到 i个可编程交换机中每个可编程交换机对应的第一转发表项, 能够提高确定第一转发表项的效率。
上述至少一个应用类别标识与至少一个业务链表之间的对应关系可以 是预先存储在 SPC 120内部的。或者,在 UE与服务器进行交互之前, SPC 120 可以从其它节点接收至少一个应用类别标识与至少一个业务链表之间的对 应关系, 并进行存储。
可选地, 作为另一实施例, 业务流类别信息包括第一应用类别标识, 第 一应用类别标识用于指示业务流的应用类别。
SPC 120可以根据第一应用类别标识以及至少一个应用类别标识与至少 一个业务链表之间的对应关系, 确定第一应用类别标识对应的第一业务链 表, 第一业务链表用于指示第一业务链。 SPC 120可以根据系 100的拓朴信 息、 第一业务链表以及第一应用类别标识, 生成 i个可编程交换机中每个可 编程交换机对应的第一转发表项, 其中第一转发表项包括第一应用类别标 识。
第一转发表项中包括应用类别标识,使得可编程交换机可以根据应用类 别标识转发业务流报文,从而能够减少可编程交换机上第一转发表项的存储 数量。
可选地, 作为另一实施例, 第一 STC 110还可以根据第一应用类别标识 对业务流的数据包进行封装。
第一转发表项中包括应用类别标识,使得可编程交换机可以根据应用类 别标识转发业务流报文。 在这种情况下, 要求第一 STC 110在向外转发数据 包之前, 根据第一应用类别标识对业务流的数据包进行封装, 然后将封装后 的数据包发送出去。 例如, 可以根据第一应用类别标识, 修改业务流数据包 的 DSCP字段,或者对业务流添加 VLAN标签,或者对业务流报文添加 MPLS 标签, 或者将第一应用类别标识直接作为隧道标识对业务流报文进行隧道封 装, 如虚拟可扩展局域网 (Virtual extensible Local Aera Network, VXLAN ) 封装、 通用路由封装( Generic Routing Encapsulation, GRE )封装等。
可选地, 作为另一实施例, SPC 120可以在生成 i个可编程交换机中每 个可编程交换机对应的第一转发表项之前, 接收业务路由规则信息, 业务路 由规则信息可以包括至少一个应用类别标识、至少一个业务链表以及至少一 个业务链表与至少一个应用类别标识之间的对应关系。 这样, SPC 120可以 存储上述至少一个应用类别标识、至少一个业务链表以及它们之间的对应关 系。
可选地, 作为另一实施例, SPC 120可以在生成 i个可编程交换机中每 个可编程交换机对应的第一转发表项之前, 接收业务路由规则信息, 业务路 由规则信息用于指示对至少一个应用类别标识与至少一个业务链表之间的 对应关系进行调整处理, 调整处理包括以下至少一种: 添加, 删除, 修改。 SPC 120可以根据业务路由规则信息, 对该对应关系进行调整处理。
SPC 120可以根据业务路由规则信息对其存储的至少一个应用类别标识 与至少一个业务链表之间的对应关系进行调整, 例如可以添加新的条目, 也 可以删除其中的某个或某些条目, 或者更改应用类别与业务链表之间的对应 关系。
例如, 业务路由规则信息中可以增加新的信元来指示各种调整操作。 下 面将结合具体例子进行说明。 1 ) 添加操作
可以在对应关系中仅添加一条新的业务链。 例如, 业务路由规则信息中 的信元可以包括( Operation^ "Add" , Service Chain ID= "111" , Service Chain= "Enablerl , Enabler2" )。其中 "Operation"可以表示操作字段,例如上述" Add" 可以表示添加操作, "Service Chain ID" 可以表示业务链 ID字段, 例如上述 业务链 ID为 111 , "Service Chain" 可以表示业务链包括的业务使能器, 例 如该业务链可以包括业务使能器 1和业务使能器 2。
此时,新添加的业务链并没有对应的 App ID。 可以在后续过程为该业务 链再添加对应的 App ID。
可以为该对应关系中的已有业务链添加一个对应的 App ID。例如,业务 路由规则信息中的信元可以包括(Operation: "Add" , Service Chain ID= "111" , App ID: "Videol" )。 "App ID" 可以表示应用类别 ID, 例如此处是 "Vedio (视频) 类别。
可以在该对应关系中, 添加一条新的业务链及对应的 App ID,其中 App ID 可以是多个。 例如, 业务路由规则信息中的信元可以包括(Operation: "Add" , Service Chain ID= "111" , Service Chain= "Enablerl , Enabler2" , App ID= " Video 1 , Video2, Web" )。
2 )删除操作
可以删除该对应关系中业务链 ID 指定的业务链以及与之对应的 App ID。例如,业务路由规则信息中的信元可以包括( Operation: "Delete" , Service Chain ID= "111" ), 或者 ( Operation^ "Delete" , Service Chain= "Enablerl , Enabler2" )。 SPC 120可以同时删除可编程交换机 130上所有与该业务链关 联的转发表项。
也可以单独删除与业务链 ID对应的 App ID。 例如, 业务路由规则信息 中的信元可以包括( Operation: "Delete" , Service Chain ID= "111" , App ID= "Videol" )。 SPC 120可以同时删除可编程交换机上与 App ID对应的转发表 项。
3 )修改操作
可以修改业务链 ID指定的业务链, SPC 120可以按照新的业务链的内 容重新计算转发表项。 例如, 业务路由规则信息中的信元可以包括 ( Operation^ "Modify" , Service Chain ID= "111" , Service Chain= "Enabler 1 , Enabler 2" )„ 该操作也可以通过先删除再添加操作替代。
上述添加、 删除、 修改操作, 除了按照业务路由规则信息中的 operation (操作) 字段区分, 也可采用独立的消息名称替代, 例如添加消息为 Add Service Routing Rule ( ), 删除消息为 Delete Service Routing Rule ( ), 修改 消息为 Modify Service Routing Rule ( )。可选地,作为另一实施例,第一 STC 110还可以获取上述业务路由规则信息, SPC 120可以通过第一接口从第一 业务流分类器接收业务路由规则信息。
可选地, 作为另一实施例, 第一 STC 110可以从 PCRF设备接收业务路 由规则信息。
可选地,作为另一实施例, SPC 120可以从策略与计费规则功能(Policy and Charging Rules Function , PCRF )设备接收上述业务路由规则信息。
例如, 可以在现有 Gx接口消息中增加业务路由信元, SPC 120可以从 PCRF设备接收携带业务路由规则信息的 Gx接口消息。 或者, PCRF设备也 可以通过新的接口消息单独传递业务路由规则信息。
可选地, 作为另一实施例, 第 j个可编程交换机, 在图 1中也就是可编 程交换机 130a, 可以在第一 STC 110根据业务流生成通知消息之前,通过第 三接口向第一 STC 110发送业务流的前 n个数据包, n为正整数。 第一 STC 110可以根据业务流的前 n个数据包生成通知消息。
第一 STC 110可以按照现有技术的过程, 解析前 n个数据包, 从而确定 业务流类别信息,并可以在需要的时候确定业务流信息。例如,第一 STC 110 处理, 以确定业务流信息和业务流类别信息。 或者, 第一 STC 110可以对前 n个数据包进行 L3/4层匹配, 以确定业务流信息和业务流类别信息。
例如, 第一 STC 110可以对 n个数据包的 L7层的消息进行 DPI处理, 也可以按照预设的 L3/4层规则对 n个数据包直接匹配, 从而得到业务流类 别信息。 在筒化的实施例中, n可以为 1 , 即, 第一 STC 110可以对第 1个 数据包进行识别来确定业务流类别信息。 在某些情况下, 第一 STC 110根据 第 1个数据包不足以确定业务流类别信息,那么第一 STC 110就需要连续緩 存 2个或 2个以上的数据包, 来确定业务流类别信息。
可选地, 作为另一实施例, 第 j个可编程交换机, 在图 1中也就是可编 程交换机 130a,可以在通过第三接口向第一 STC 110发送前 n个数据包之前, 接收业务流的第 1个数据包。 SPC 120还可以从可编程交换机 130接收第 1 个数据包的信息, 并在确定需要将第 1 个数据包需要转发给所述第一 STC 110的情况下, 根据第 1个数据包的信息生成第二转发表项, 其中, 第二转 发表项中业务流对应的目的地址为第一 STC 110的地址。 第 j个可编程交换 机, 即图 1中的可编程交换机 130a还可以通过第二接口从 SPC 120接收第 二转发表项,并根据第二转发表项通过第三接口向第一 STC 110转发前 n个 数据包。
例如, 如果该业务流为下行业务流, 边界路由器可以将业务流的数据包 直接发送给可编程交换机 130a。 如果是第 1个数据包, 可编程交换机 130a 并没有该数据包对应的转发表, 那么可编程交换机 130a可以将第 1个数据 包的信息发送给 SPC 120。 第 1个数据包的信息可以包括完整的第 1个数据 包, 也可以包括第 1个数据包的部分信息, 例如前 128个字节信息。 例如, 可以通过 Packet_in消息向 SPC 120发送第 1个数据包的信息。 SPC 120可以 在确定需要将第 1个数据包需要转发给第一 STC 110的情况下,根据第 1个 数据包的信息和预设的业务路由, 生成第二转发表项。 第二转发表项可以指 示可编程交换机 130a将数据包转发给第一 STC 110。
可见, 本实施例中, SPC 120可以决定是否要将数据包转发给第一 STC 110进行处理, 例如, 对于需要通过 L7层进行 DPI识别的业务流, SPC 120 可以确定将上述第 1个数据包转发给第一 STC 110进行识别。而对于可以通 过 L3/4层直接匹配的业务流, SPC 120可以直接生成转发表项下发给可编程 交换机 130a, 由可编程交换机 130a根据转发表项转发业务流的数据包。 这 样, SPC 120能够控制经过第一 STC 110的流量。
可编程交换机 130a在接收到与该业务流对应的新的转发表项之前, 会 按照第二转发表项将接收到的该业务流的数据包通过第三接口转发给第一 STC 110。 例如, 可编程交换机在接收到与该业务流对应的新的转发表项之 前, 接收到该业务流的前 n个数据包, 那么会将前 n个数据包转发给第一 STC 110。
可选地, 作为另一实施例, 第 j个可编程交换机, 也即图 1中的可编程 交换机 130a, 与移动网关之间可以具有第四接口。 第 j个可编程交换机可以 通过第四接口从移动网关接收第一个数据包。
移动网关可以是通用分组无线业务网关支撑节点 (Gateway GPRS (General Packet Radio Service) Support Node , GGSN ), 或者分组数据网络网 关(Packet Data Network Gateway, PGW )等。
作为一种实现方式,移动网关和第一 STC 110可以分别与可编程交换机 130a连接, 并且移动网关可以与 UE通过无线接入网相连接。 这样, 对于上 行业务流的数据包,移动网关可以直接将业务流的数据包发送给可编程交换 机 130a, 而无需由第一 STC 110进行转发, 从而能够节省网络时延。
可选地, 作为另一实施例, 第一 STC 110可以位于在移动网关与第 j个 可编程交换机之间。 或者, 第一 STC 110可以位于移动网关内部。
可以采用多种方式来部署系统 100。 例如, 第一 STC 110可以作为单独 的设备部署在移动网关和可编程交换机 130之间。 或者, 第一 STC 110也可 以作为一个模块部署在移动网关内部。
此外, SPC 120也可以内置在第一 STC 110内部, 也就是说第一接口可 以是内部接口。
可选地, 作为另一实施例, 系统 100还可以包括第二业务流分类器; 第 二业务流分类器与 SPC 120之间可以具有第一接口。第二业务流分类器与可 编程交换机 130a至 130c中的第 p个可编程交换机之间可以具有第三接口, 其中 p为小于或等于 h的正整数。
具体地, 系统 100可以包括多个业务流分类器, 它们分别与 SPC 120具 有第一接口, 与可编程交换机 130a至 130c中之一之间具有第三接口。 每个 业务流分类器对业务流的处理过程均类似于上述第一 STC 120的处理过程, 此处不再赘述。
本实施例中, SPC 120可以服务于多个业务流分类器, 能够使得来自不 同源的同一类别的业务流经过相同的业务使能器。 这种情况下, 各个业务流 分类器中配置的业务链表或应用类别标识可以是一致的。
下面将结合具体的例子详细描述本发明实施例。 应注意, 图 2至图 9的 例子只是为了帮助本领域技术人员更好地理解本发明实施例, 而非限制本发 明实施例的范围。 还应注意, 为了便于描述, 在图 2至图 9中, 将以 1个可 编程交换机和 3个业务使能器为例进行说明。 但本发明实施例中, 可编程交 换机的数目可以更多, 业务使能器的数目也可以更多或更少。
图 2是根据本发明一个实施例的网络架构的示意图。
在图 2所示的网络架构中, 业务路由系统 200可以包括 STC 210、 SPC 220、 可编程交换机 230、 业务使能器 240a、 业务使能器 240b和业务使能器 240c。 STC 210与 SPC 220之间可以具有第一接口, SPC 220与可编程交换 机 230之间可以具有第二接口, STC 210与可编程交换机 230之间可以具有 第三接口。业务使能器 240a至 240c分别与可编程交换机 230相连接。 STC 210 可以与 GGSN/PGW 250 相连接, 可编程交换机 230 可以与边界路由器 ( Router ) 260连接。
在图 2的系统 200中, STC 210可以作为独立的设备部署在 GGSN/PGW 250与可编程交换机 230之间。 GGSN/PGW 250可以通过 Gi接口与 STC 210 进行通信。
对于上行方向, STC 210可以从 GGSN/PGW 250接收业务流。对于下行 方向, STC 210可以从可编程交换机 230接收业务流。
例如, STC 210可以根据接收到的业务流生成通知消息, 通知消息包括 业务流对应的业务流类别信息, 业务流类别信息可以用于指示业务流对应的 第一业务链, 其中第一业务链由上述业务使能器 240a至 240c中至少一个组 成, 第一业务链中的业务使能器按照第一顺序排列。
SPC 220可以通过第一接口从 STC 210接收通知消息, 并可以根据通知 消息生成可编程交换机 230对应的第一转发表项。
可编程交换机 230可以通过第二接口从 SPC 220接收第一转发表项,根 据第一转发表项转发业务流的数据包,使得第一业务链的业务使能器按照第 一顺序对业务流的数据包进行处理。
如果该业务流为上行业务流, 可编程交换机 230可以将第一业务链处理 后的数据包转发给边界路由器 260, 由边界路由器 260转发给服务器。 如果 该业务流为下行业务流, 可编程交换机可以将第一业务链处理后的数据包转 发给 STC 210, 由 STC 210转发给 GGSN/PGW 250, 由 GGSN/PGW 250转 发给 UE。
系统 200的具体功能和操作可以参照图 1的实施例, 为了避免重复, 此 处不再赘述。
本发明实施例中, 通过业务流分类器生成包括业务类别信息的通知消 息, 其中业务流类别信息用于指示业务流对应的第一业务链, 业务路径控制 器根据通知消息生成可编程交换机对应的第一转发表项,可编程交换机根据 第一转发表项转发业务流的数据包,使得第一业务链的业务使能器按照第一 顺序处理业务流的数据包, 从而能够提升网络可靠性, 并减小网络时延。 图 3是根据本发明另一实施例的网络架构的示意图。
在图 3的网络架构中, 业务路由系统 300可以包括 STC 310、 SPC 320、 可编程交换机 330、 业务使能器 340a、 业务使能器 340b和业务使能器 340c。 STC 310与 SPC 320之间可以具有第一接口, SPC 320与可编程交换机 330 之间可以具有第二接口, STC 310与可编程交换机 330之间可以具有第三接 口。 业务使能器 340a至 340c分别与可编程交换机 330相连接。
STC 310可以作为一个模块部署在 GGSN/PGW 350内部, 并可以通过 GGSN/PGW 350内部的接口与 GGSN/PGW 350交互。 可编程交换机 330还 可以与边界路由器 360分别连接。
应理解, 在图 3中, 为了描述方便, 仅示出了 3个业务使能器, 而本发 明实施例中, 可以有更少或更多的业务使能器。
本发明实施例中, 通过业务流分类器生成包括业务类别信息的通知消 息, 其中业务流类别信息用于指示业务流对应的第一业务链, 业务路径控制 器根据通知消息生成可编程交换机对应的第一转发表项, 可编程交换机根据 第一转发表项转发业务流的数据包,使得第一业务链的业务使能器按照第一 顺序处理业务流的数据包, 从而能够提升网络可靠性, 并减小网络时延。
图 4是根据本发明另一实施例的网络架构的示意图。
在图 4的网络架构中, 业务路由系统 400可以包括 STC 410、 SPC 420、 可编程交换机 430、 业务使能器 440a、 业务使能器 440b和业务使能器 440c。 SPC 420可以作为一个模块内置在 STC 410中。 STC 410与 SPC 420之间可 以具有第一接口 (图 4中未示出), 此时, 第一接口为 STC 410的内部接口。 SPC 420与可编程交换机 430之间可以具有第二接口, STC 410与可编程交 换机 430之间可以具有第三接口。 业务使能器 440a至 440c分别与可编程交 换机 430相连接。
STC 410可以与 GGSN/PGW 450相连接,可编程交换机 430可以与边界 路由器 460相连接。
系统 400的具体功能和操作可以参照图 1的实施例, 为了避免重复, 此 处不再赘述。
本发明实施例中, 通过业务流分类器生成包括业务类别信息的通知消 息, 其中业务流类别信息用于指示业务流对应的第一业务链, 业务路径控制 器根据通知消息生成可编程交换机对应的第一转发表项, 可编程交换机根据 第一转发表项转发业务流的数据包,使得第一业务链的业务使能器按照第一 顺序处理业务流的数据包, 从而能够提升网络可靠性, 并减小网络时延。
图 5是根据本发明另一实施例的网络架构的示意图。
在图 5的网络架构中, 业务路由系统 500可以包括 STC 510、 SPC 520、 可编程交换机 530、 业务使能器 540a、 业务使能器 540b和业务使能器 540c。 STC 510与 SPC 520之间可以具有第一接口, SPC 520与可编程交换机 530之间可以具有第二接口, STC 510与可编程交换机 530之间可以具有第 三接口。 业务使能器 540a至 540c分别与可编程交换机 530相连接。
STC 510可以与 GGSN/PGW 550相连接,可编程交换机 530可以与边界 路由器 560相连接。 此外, STC 510还可以与 PCRF设备 570相连接。
STC 510可以根据业务流生成通知消息, 通知消息包括业务流对应的业 务流信息和业务流类别信息, 业务流类别信息可以用于指示业务流对应的第 一业务链,其中第一业务链由上述业务使能器 540a至 540c中至少一个组成, 第一业务链中的业务使能器按照第一顺序排列。
SPC 520可以通过第一接口从 STC510接收通知消息, 并可以根据通知 消息生成可编程交换机 530对应的第一转发表项。
可选地, 业务流类别信息可以包括第一应用类别标识, 第一应用类别标 识用于指示业务流的应用类别,第一应用类别标识与第一业务链相对应。 SPC 520可以根据第一应用类别标识以及至少一个应用类别标识与至少一个业务 链表之间的对应关系, 确定第一业务链表, 第一业务链表可以指示第一业务 链。 然后, SPC 520可以根据第一业务链和系统 500的拓朴信息, 生成第一 转发表项。
具体地, 在用户设备与服务器进行交互之前, STC 510可以从 PCRF设 备 570接收上述业务路由规则信息, 业务路由规则信息可以包括至少一个业 务链表与至少一个应用类别标识之间的对应关系。 STC 510可以通过第一接 口将业务路由规则信息转发给 SPC 520。
可编程交换机 530可以通过第二接口从 SPC 520接收第一转发表项,根 据第一转发表项转发业务流的数据包,使得第一业务链的业务使能器按照第 一顺序对业务流的数据包进行处理。
系统 500的具体功能和操作可以参照图 1的实施例, 为了避免重复, 此 处不再赘述。
本发明实施例中, 通过业务流分类器生成包括业务类别信息的通知消 息, 其中业务流类别信息用于指示业务流对应的第一业务链, 业务路径控制 器根据通知消息生成可编程交换机对应的第一转发表项, 可编程交换机根据 第一转发表项转发业务流的数据包,使得第一业务链的业务使能器按照第一 顺序处理业务流的数据包, 从而能够提升网络可靠性, 并减小网络时延。
图 6是根据本发明另一实施例的业务路由系统的示意图。
在图 6的网络架构中, 业务路由系统 600可以包括 STC 610、 SPC 620、 可编程交换机 630、 业务使能器 640a、 业务使能器 640b和业务使能器 640c。
STC 610与 SPC 620之间可以具有第一接口, SPC 620与可编程交换机
630之间可以具有第二接口, STC 610与可编程交换机 630之间可以具有第 三接口。 业务使能器 640a至 640c分别与可编程交换机 630相连接。
STC 610可以与 GGSN/PGW 650相连接,可编程交换机 630可以与边界 路由器 660相连接。
此外, 在图 6中, SPC 620还可以与 PCRF设备 670相连接。 类似于图
5的实施例, SPC 620可以根据第一应用类别标识和至少一个应用类别标识 与至少一个业务链表之间的对应关系, 确定第一业务链表。 然后可以根据第 一业务链表和系统 600的拓朴信息, 生成可编程交换机 630对应的第一转发 表项。 在图 5中, SPC 620可以从 STC 610接收包括上述对应关系的业务路 由规则信息, 而图 6中, 由于 SPC 620可以与 PCRF设备 670相连接, 那么 SPC 620可以直接从 PCRF设备 670接收包括上述对应关系的业务路由规则 信息。
系统 600的具体功能和操作可以参照图 1的实施例, 为了避免重复, 此 处不再赘述。
本发明实施例中, 通过业务流分类器生成包括业务类别信息的通知消 息, 其中业务流类别信息用于指示业务流对应的第一业务链, 业务路径控制 器根据通知消息生成可编程交换机对应的第一转发表项, 可编程交换机根据 第一转发表项转发业务流的数据包,使得第一业务链的业务使能器按照第一 顺序处理业务流的数据包, 从而能够提升网络可靠性, 并减小网络时延。
图 7是根据本发明另一实施例的网络架构的示意图。
业务路由系统可以包括多个 STC, 多个 STC可以分别与 SPC相连接。 即, SPC可以服务于多个 STC, 使得来自不同源的同一应用类别的业务流可 以经过相同的业务链。
例如, 图 7 中, 业务路由系统 700可以包括 STC 710a, STC 710b, STC710c, SPC 720、可编程交换机 730、 业务使能器 740a、 业务使能器 740b 和业务使能器 740c。
STC 710a至 710c可以分别与 SPC 620之间具有第一接口, SPC 720与 可编程交换机 730之间可以具有第二接口, STC 710a至 710c可以分别与可 编程交换机 630之间具有第三接口。 业务使能器 640a至 640c分别与可编程 交换机 630相连接。
STC 710a至 710c可以分别连接到一个 GGSN/PGW上, 如图 7所示,
STC 710a与 GGSN/PGW 750a相连接, STC 710b与 GGSN/PGW 750b相连 接, STC 710c与 GGSN/PGW 750c相连接, 可编程交换机 730可以与边界路 由器 760相连接。
在本发明实施例中, 3个 STC也可以都连接到一个 GGSN/PGW。
应理解, 在图 7中, 为了描述方便, 仅示出了 3个 STC, 而本发明实施 例中, 可以有更少或更多的 STC。
系统 700的具体功能和操作可以参照图 1的实施例, 为了避免重复, 此 处不再赘述。
本发明实施例中, 通过业务流分类器生成包括业务类别信息的通知消 息, 其中业务流类别信息用于指示业务流对应的第一业务链, 业务路径控制 器根据通知消息生成可编程交换机对应的第一转发表项, 可编程交换机根据 第一转发表项转发业务流的数据包,使得第一业务链的业务使能器按照第一 顺序处理业务流的数据包, 从而能够提升网络可靠性, 并减小网络时延。
图 8是根据本发明另一实施例的网络架构的示意图。
在图 8的网络架构中, 业务路由系统 800可以包括 STC 810、 SPC 820、 可编程交换机 830、 业务使能器 840a、 业务使能器 840b和业务使能器 840c。
STC 810与 SPC 820之间可以具有第一接口, SPC 820与可编程交换机 830之间可以具有第二接口, STC 810与可编程交换机 830之间可以具有第 三接口。 业务使能器 840a至 840c分别与可编程交换机 830相连接。
可编程交换机 830可以与 GGSN/PGW 850之间具有第四接口, 可编程 交换机 830还可以和边界路由器 860相连接。 在图 2至图 7的网络架构中,在 SPC向可编程交换机下发第一转发表项 后, 上行业务流的数据包是由 GGSN/PGW转发给 STC, 由 STC转发给可编 程交换机, 然后再由可编程交换机进行转发。
在图 8的网络架构中, 上行业务流的数据包可以由 GGSN/PGW 850直 接发送给可编程交换机 830。 下行业务流的数据包可以由边界路由器 860转 发给可编程交换机 830。
对于第 1个数据包来说, 可编程交换机 830可能没有相应的转发表项, 那么可编程交换机 830可以向 SPC 820转发第 1个数据包的信息。 SPC 820 确定第 1个数据包需要转发给 STC 810的情况下, 可以向可编程交换机 830 发送第二转发表项, 第二转发表项用于指示将业务流的数据包转发给 STC 810。 这样, 可编程交换机 830可以根据第二转发表项, 向 STC 810发送第 1个数据包。 可编程交换机在接收到与该业务流对应的新的转发表项之前, 如果接收到该业务流的前 n个数据包, 那么会将前 n个数据包转发给 STC 810。 STC 810可以根据前 n个数据包确定业务流对应的业务流信息和业务 流类别信息。
在图 8中, SPC 820可以决定是否要将数据包转发给 STC 810进行处理, 从而能够控制经过 STC 810的流量。
系统 800的具体功能和操作可以参照图 1的实施例, 为了避免重复, 此 处不再赘述。
本发明实施例中, 通过业务流分类器生成包括业务类别信息的通知消 息, 其中业务流类别信息用于指示业务流对应的第一业务链, 业务路径控制 器根据通知消息生成可编程交换机对应的第一转发表项, 可编程交换机根据 第一转发表项转发业务流的数据包,使得第一业务链的业务使能器按照第一 顺序处理业务流的数据包, 从而能够提升网络可靠性, 并减小网络时延。
图 9是根据本发明另一实施例的网络架构的示意图。
在图 9的网络架构中, 业务路由系统 900可以包括 STC 910、 SPC 920、 可编程交换机 930、 业务使能器 940a、 业务使能器 940b和业务使能器 940c。 STC 910与 SPC 920之间可以具有第一接口。 SPC 920与可编程交换机 930 之间可以具有第二接口, STC 910与可编程交换机 930之间可以具有第三接 口。 业务使能器 940a至 940c分别与可编程交换机 930相连接。
STC 910可以作为一个模块部署在 GGSN/PGW 950内部, 并可以通过 GGSN/PGW 950内部的接口与 GGSN/PGW 950交互。 GGSN/PGW 950还可 以与边界路由器 960相连接。
在图 8中, 上行业务流的数据包可以由 GGSN/PGW 850直接发送给可 编程交换机 830。 下行业务流的数据包是由边界路由器 860转发给可编程交 换机 830的。
在图 9 中, 上行业务流的数据包和下行业务流的数据包均首先到达 GGSN/PGW 950, GGSN/PGW 950可以先将数据包转发给内置的 STC 910, 由 STC 910转发给可编程交换机 930。 例如, 对于第 1个数据包或前几个数 据包, STC 910可以生成通知消息,通知消息可以包括业务流类别信息, SPC 920可以根据通知消息确定可编程交换机 930对应的第一转发表项。 对于后 续的数据包, GGSN/PGW 950可以通过 STC转发给可编程交换机 930, 由可 编程交换机 930根据第一转发表项进行转发。
系统 900的具体功能和操作可以参照图 1的实施例, 为了避免重复, 此 处不再赘述。
本发明实施例中, 通过业务流分类器生成包括业务类别信息的通知消 息, 其中业务流类别信息用于指示业务流对应的第一业务链, 业务路径控制 器根据通知消息生成可编程交换机对应的第一转发表项, 可编程交换机根据 第一转发表项转发业务流的数据包,使得第一业务链的业务使能器按照第一 顺序处理业务流的数据包, 从而能够提升网络可靠性, 并减小网络时延。
图 10是根据本发明一个实施例的业务路径控制器的示意框图。 图 10的
SPC 1000包括接收单元 1010、 生成单元 1020和发送单元 1030。
接收单元 1010与第一 STC之间具有第一接口。
接收单元 1010可以通过第一接口从第一业务流分类器接收通知消息, 通知消息包括业务流对应的业务流类别信息, 业务流类别信息用于指示业务 流对应的第一业务链, 第一业务链由一个或多个按照第一顺序排列的业务使 能器组成。 生成单元 1020可以根据通知消息生成一个或多个可编程交换机 分别对应的第一转发表项。 发送单元 1030可以向一个或多个可编程交发送 每个可编程交换机对应的第一转发表项, 以便可编程交换机根据可编程交换 机对应的第一转发表项转发业务流的数据包, 以使一个或多个业务使能器按 照第一顺序处理业务流的数据包。
本发明实施例中,通过接收第一业务流分类器生成包括业务流类别信息 的通知消息, 其中业务流类别信息用于指示业务流对应的由一个或多个业务 使能器组成的第一业务链, 并根据通知消息生成一个或多个可编程交换机分 别对应的第一转发表项, 一个多个可编程交换机分别根据各自对应的第一转 发表项转发业务流的数据包,使得一个或多个业务使能器按照第一顺序处理 业务流的数据包, 从而能够提升网络可靠性, 并减小网络时延。
可选地, 作为一个实施例, 发送单元 1030可以与 h个可编程交换机之 间具有第二接口。第一业务链可以由 m个业务使能器中的 k个业务使能器组 成, 其中在第一业务链中 k个业务使能器按照第一顺序排列。
生成单元 1120可以根据通知消息生成 i个可编程交换机中每个可编程交 换机对应的第一转发表项, i个可编程交换机与 k个业务使能器中的至少一 个相连接, i个可编程交换机是从 h个可编程交换机中选择的。 其中, h和 m 为正整数, k为小于或等于 m的正整数, i为小于或等于 h的正整数。
可选地, 作为另一实施例, 通知消息还可以包括业务流对应的业务流信 息, 业务流信息包括以下至少一种: 源媒体接入控制 MAC地址、 目的 MAC 地址、 源网际协议 IP地址、 目的 IP地址、 源端口号、 目的端口号和协议类 型。
可选地, 作为另一实施例, 业务流类别信息可以包括第一业务链表, 第 一业务链表用于指示第一业务链。 生成单元 1020可以根据业务路径控制器 所在的业务路由系统的拓朴信息、 第一业务链表和业务流信息生成 i个可编 程交换机中每个可编程交换机对应的第一转发表项。
可选地,作为另一实施例,业务流类别信息可以包括第一应用类别标识, 第一应用类别标识用于指示业务流的应用类别。
生成单元 1020可以根据第一应用类别标识以及至少一个应用类别标识 与至少一个业务链表之间的对应关系,确定第一应用类别标识对应的第一业 务链表, 第一业务链表用于指示第一业务链。 生成单元 1020根据业务路由 系统的拓朴信息、 第一业务链表以及业务流信息, 生成 i个可编程交换机中 每个可编程交换机对应的第一转发表项。
可选地,作为另一实施例,业务流类别信息可以包括第一应用类别标识。 生成单元 1020可以根据第一应用类别标识以及至少一个应用类别标识 与至少一个业务链表之间的对应关系,确定第一应用类别标识对应的第一业 务链表, 第一业务链表用于指示第一业务链。 生成单元 1020可以根据业务 路由系统的拓朴信息、 第一业务链表以及第一应用类别标识, 生成 i个可编 程交换机中每个可编程交换机对应的第一转发表项, 其中第一转发表项包括 第一应用类别标识。
可选地, 作为另一实施例, 接收单元 1010还可以在生成单元 1020生成 i 个可编程交换机中每个可编程交换机对应的第一转发表项之前, 接收业务 路由规则信息, 业务路由规则信息包括上述至少一个应用类别标识、 上述至 少一个业务链表以及上述对应关系。
可选地, 作为另一实施例, 接收单元 1010还可以在生成单元 1020生成 i 个可编程交换机中每个可编程交换机对应的第一转发表项之前, 接收业务 路由规则信息, 业务路由规则信息用于指示对上述对应关系进行调整处理, 调整处理包括以下至少一种: 添加, 删除, 修改。 生成单元 1020还可以根 据业务路由规则信息, 对上述对应关系进行调整处理。
可选地, 作为另一实施例, 接收单元 1010可以通过第一接口从第一业 务流分类器接收业务路由规则信息。 或者, 接收单元 1010可以从 PCRF设 备接收业务路由规则信息。
可选地, 作为另一实施例, 接收单元 1010还可以通过第二接口从 h个 可编程交换机中的第 j个可编程交换机接收业务流的数据包的信息, 其中第 j个可编程交换机与第一 STC之间具有第三接口。
生成单元 1020 还可以当需要将业务流的数据包需要转发给第一 STC 时, 根据业务流的数据包的信息生成第二转发表项, 其中, 第二转发表项用 于指示向第一 STC转发业务流的数据包。
发送单元 1030还可以通过第二接口向第 j个可编程交换机发送第二转发 表项,以便第 j个可编程交换机根据第二转发表项向第一 STC转发业务流的 数据包, 第一 STC根据业务流的数据包生成通知消息。
可选地, 作为另一实施例, 在第 j个可编程交换机中没有业务流的数据 包对应的转发表项, 或者, 在可编程交换机中业务流的数据包对应的转发表 项指示第 j个可编程交换机向 SPC 1000发送业务流的数据包的信息。
可选地, 作为另一实施例, 接收单元 1010还与第二 STC之间具有第一 接口。
业务路径控制器 1000的其它功能和操作可以参照图 1至图 9的实施例 中涉及 SPC的功能和操作, 为了避免重复, 此处不再赘述。 图 11是根据本发明一个实施例的业务流分类器的示意框图。 STC 1100 包括生成单元 1110和发送单元 1120。 发送单元 1120与 SPC之间具有第一 接口。
生成单元 1110根据业务流生成通知消息, 通知消息包括业务流对应的 业务流类别信息, 业务流类别信息用于指示业务流对应的第一业务链, 第一 业务链由一个或多个按照第一顺序排列的业务使能器组成。 发送单元 1120 通过第一接口向 SPC发送通知消息。
本发明实施例中, 通过生成包括业务流类别信息的通知消息, 其中业务 流类别信息用于指示业务流对应的第一业务链, 并向业务路径控制器发送通 知消息,使得业务路径控制能够根据通知消息生成一个或多个可编程交换机 分别对应的第一转发表项,使得可编程交换机根据对应的第一转发表项转发 业务流的数据包以便一个或多个业务使能器按照第一顺序处理业务流的数 据包, 能够提升网络可靠性, 并减小网络时延。
可选地,作为一个实施例,第一业务链由 m个业务使能器中的 k个业务 使能器组成, 其中在第一业务链中 k个业务使能器按照第一顺序排列, m为 正整数, k为小于或等于 m的正整数。
可选地, 作为另一实施例, 通知消息还可以包括业务流对应的业务流信 息, 业务流信息包括以下至少一种: 源媒体接入控制 MAC地址、 目的 MAC 地址、 源网际协议 IP地址、 目的 IP地址、 源端口号、 目的端口号和协议类 型。
业务流类别信息可以包括第一业务链表, 第一业务链表用于指示第一业 务链; 或者, 业务流类别信息可以包括第一应用类别标识, 第一应用类别标 识用于指示业务流的应用类别。
可选地, 作为另一实施例, STC 1100还可以包括封装单元 1140。 业务 流类别信息可以包括第一应用类别标识, 第一应用类别标识用于指示业务流 的应用类别, 第一应用类别标识与第一业务链相对应。
封装单元 1140还可以根据第一应用类别标识, 对业务流的数据包进行 封装。
可选地, 作为另一实施例, STC 1100还可以包括接收单元 1130。 接收 单元 1130与 h个可编程交换机中的第 j个可编程交换机之间具有第三接口, h为正整数, j为小于或等于 h的正整数。 接收单元 1130可以通过第三接口从第 j个可编程交换机接收业务流的前 n个数据包, n为正整数。 生成单元 1110可以根据前 n个数据包生成通知消 息。
STC 1100的其它功能和操作可以参照图 1至图 9的实施例涉及 STC的 功能和操作, 为了避免重复, 此处不再赘述。
图 12是根据本发明一个实施例的业务路由方法的示意性流程图。 图 12 的方法由 SPC执行。
1210, 从第一 STC接收通知消息, 通知消息包括业务流对应的业务流 类别信息, 业务流类别信息用于指示业务流对应的第一业务链, 第一业务链 由一个或多个按照第一顺序排列的业务使能器组成。
1220,根据通知消息生成一个或多个可编程交换机分别对应的第一转发 表项。
1230, 向一个或多个可编程交换机发送每个可编程交换机对应的第一转 发表项, 以便可编程交换机根据可编程交换机对应的第一转发表项转发业务 流的数据包, 以使一个或多个业务使能器按照第一顺序处理业务流的数据 包。
本发明实施例中,通过接收第一业务流分类器生成包括业务流类别信息 的通知消息, 其中业务流类别信息用于指示业务流对应的由一个或多个业务 使能器组成的第一业务链, 并根据通知消息生成一个或多个可编程交换机分 别对应的第一转发表项, 可编程交换机分别根据各自对应的第一转发表项转 发业务流的数据包,使得一个或多个业务使能器按照第一顺序处理业务流的 数据包, 从而能够提升网络可靠性, 并减小网络时延。
可选地, 作为一个实施例, 第一业务链可以由 m 个业务使能器中的 k 个业务使能器组成,其中在第一业务链中 k个业务使能器按照第一顺序排列。 在步骤 1220中, SPC可以根据通知消息生成 i个可编程交换机中每个可编 程交换机对应的第一转发表项, i个可编程交换机与 k个业务使能器中的至 少一个相连接, i个可编程交换机是从 h个可编程交换机中选择的。 其中, h 和 m为正整数, k为小于或等于 m的正整数, i为小于或等于 h的正整数。
可选地, 作为另一实施例, 通知消息还可以包括业务流对应的业务流信 息, 业务流信息包括以下至少一种: 源媒体接入控制 MAC地址、 目的 MAC 地址、 源网际协议 IP地址、 目的 IP地址、 源端口号、 目的端口号和协议类 型。
可选地, 作为另一实施例, 业务流类别信息可以包括第一业务链表, 第 一业务链表用于指示第一业务链。 在步骤 1220中, SPC可以根据业务路由 系统的拓朴信息、 第一业务链表以及业务流信息, 生成 i个可编程交换机中 每个可编程交换机对应的第一转发表项。
可选地,作为另一实施例,业务流类别信息可以包括第一应用类别标识, 第一应用类别标识用于指示业务流的应用类别。
在步骤 1220中, SPC可以根据第一应用类别标识以及至少一个应用类 别标识与至少一个业务链表之间的对应关系,确定第一应用类别标识对应的 第一业务链表, 第一业务链表用于指示第一业务链。 SPC可以根据业务路由 系统的拓朴信息、 第一业务链表和业务流信息, 生成 i个可编程交换机中每 个可编程交换机对应的第一转发表项。
可选地,作为另一实施例,业务流类别信息可以包括第一应用类别标识。 在步骤 1220中, SPC可以根据第一应用类别标识以及至少一个应用类别标 识与至少一个业务链表之间的对应关系,确定第一应用类别标识对应的第一 业务链表, 第一业务链表用于指示第一业务链。 SPC可以根据业务路由系统 的拓朴信息、 第一业务链表以及第一应用类别标识, 生成 i个可编程交换机 中每个可编程交换机对应的第一转发表项, 其中第一转发表项包括第一应用 类别标识。
可选地, 作为另一实施例, SPC可以生成 i个可编程交换机中每个可编 程交换机对应的第一转发表项之前, 接收业务路由规则信息, 业务路由规则 信息包括上述至少一个应用类别标识、上述至少一个业务链表以及上述对应 关系。
可选地, 作为另一实施例, SPC可以在生成 i个可编程交换机中每个可 编程交换机对应的第一转发表项之前, 接收业务路由规则信息, 业务路由规 则信息用于指示对第二对应关系进行调整处理, 调整处理包括以下至少一 种: 添加, 删除, 修改, 并可以根据业务路由规则信息, 对上述对应关系进 行调整处理。
可选地, 作为另一实施例, SPC可以从第一 STC接收业务路由规则信 息。 或者, SPC可以从 PCRF设备接收业务路由规则信息。
可选地, 作为另一实施例, SPC还可以从 h个可编程交换机中的第 j个 可编程交换机接收业务流的数据包的信息, j为小于或等于 h的正整数。 当 需要将业务流的数据包需要转发给第一 SPC的情况下, SPC可以根据业务 流的数据包的信息生成第二转发表项, 其中, 第二转发表项用于指示向第一 STC转发业务流的数据包。 SPC可以向第 j个可编程交换机发送第二转发表 项,以便第 j个可编程交换机根据第二转发表项向第一 STC转发业务流的数 据包, 第一 STC根据业务流的数据包生成通知消息。
可选地, 作为另一实施例, 在可编程交换机中业务流的数据包没有对应 的转发表项, 或者, 在可编程交换机中业务流的数据包对应的转发表项指示 可编程交换机向业务路径控制器发送业务流的数据包的信息。
图 12的方法的具体过程可以参照图 1至图 9的实施例中涉及 SPC的功 能和操作, 为了避免重复, 此处不再赘述。
图 13是根据本发明一个实施例的业务路由方法的示意性流程图。 图 13 的方法由 STC执行。
1310, 根据业务流生成通知消息, 通知消息包括业务流对应的业务流类 别信息, 业务流类别信息用于指示业务流对应的第一业务链, 第一业务链由 一个或多个按照第一顺序排列的业务使能器组成。
1320, 向业务路径控制器发送所述通知消息。
本发明实施例中, 通过生成包括业务流类别信息的通知消息, 其中业务 流类别信息用于指示业务流对应的第一业务链, 并向业务路径控制器发送通 知消息,使得业务路径控制能够根据通知消息生成一个或多个可编程交换机 分别对应的第一转发表项,使得可编程交换机根据对应的第一转发表项转发 业务流的数据包以便一个或多个业务使能器按照第一顺序处理业务流的数 据包, 能够提升网络可靠性, 并减小网络时延。
可选地, 作为一个实施例, 第一业务链可以由 m 个业务使能器中的 k 个业务使能器组成,其中在第一业务链中 k个业务使能器按照第一顺序排列, m均为正整数, k为小于或等于 m的正整数。
可选地, 作为另一实施例, 通知消息还包括业务流对应的业务流信息, 业务流信息包括以下至少一种: 源媒体接入控制 MAC地址、 目的 MAC地 址、 源网际协议 IP地址、 目的 IP地址、 源端口号、 目的端口号和协议类型。 业务流类别信息包括第一业务链表, 第一业务链表用于指示第一业务链; 或 者, 业务流类别信息包括第一应用类别标识, 第一应用类别标识用于指示业 务流的应用类别。
可选地,作为另一实施例,业务流类别信息可以包括第一应用类别标识, 第一应用类别标识用于指示业务流的应用类别。
STC还可以根据第一应用类别标识, 对业务流的数据包进行封装。
可选地, 作为另一实施例, STC可以从 h个可编程交换机中的第 j个可 编程交换机接收业务流的数据包, 并根据业务流的数据包生成通知消息。
图 13的方法的具体过程可以参照图 1至图 9的实施例中涉及第一 STC 的功能和操作, 为了避免重复, 此处不再赘述。
下面将结合具体的例子详细描述本发明实施例。 应注意, 图 14至图 16 的例子只是为了帮助本领域技术人员更好地理解本发明实施例, 而非限制本 发明实施例的范围。
图 14是根据本发明一个实施例的业务路由方法的过程的示意性流程图。 在图 14中, 将结合图 2的网络架构描述上行业务流的处理过程。
1401 , SPC 220从 STC 210接收业务路由规则信息。
业务路由规则信息可以包括至少一个应用类别标识、至少一个业务链表 以及至少一个业务链表与至少一个应用类别标识之间的对应关系。每个业务 链表用于指示一条由所述 m个业务使能器中至少一个业务使能器组成的业 务链
SPC 220可以存储该对应关系。
SPC 220可以获取预先存储的系统 200的拓朴信息, 其中系统 200的拓 朴信息用于指示该系统 200的内部拓朴以及外部连接关系。 然后, SPC 220 可以根据至少一个业务链表和拓朴信息, 生成至少一个业务路由模板, 其中 至少一个业务路由模板与至少一个业务链表——对应。 SPC 20可以存储至少 一个业务路由模板。
1402, STC 210从 GGSN/PGW 250接收业务流的第 1个数据包。
1403, STC 210根据第 1个数据包, 生成业务流对应的业务流信息和业 务流对应的第一应用类别标识。
例如, STC 210可以对第 1个数据包进行 L7层 DPI处理, 确定业务流 信息和业务流类别信息。或者, STC 210可以对第 1个数据包进行 L3/4层匹 配, 确定业务流信息和业务流类别信息。
业务流信息可以包括业务流的 IP七元组中的至少一项。 第一应用类别 标识可以用于指示业务流的应用类别。 第一应用类别标识可以对应于业务流 所对应的第一业务链。 此处, 假设第一业务链由业务使能器 240a和 240c组 成, 其中在第一业务链中 2个业务使能器按照第一顺序排列, 此处假设第一 顺序为业务使能器 240c排在业务使能器 240a之前。
1404, STC 210向 SPC 220发送通知消息, 通知消息包括业务流信息和 第一应用类别标识。
1405 , SPC 220根据业务流信息和第一应用类别标识以及上述对应关系, 生成可编程交换机 230对应的第一转发表项。
例如, SPC 220可以根据第一应用类别标识和上述对应关系, 确定第一 应用类别标识对应的第一业务链表, 第一业务链表可以用于指示第一业务 链。 SPC 220可以根据第一业务链表, 确定第一业务链表对应的第一业务路 由模板,根据业务流信息和第一业务路由模板确定可编程交换机 230对应的 第一转发表项。
1406, SPC 220向可编程交换机 230发送第一转发表项。
1407, SPC 220向 STC 210发送确认消息。 确认消息用于指示已将第一 转发表项发送给可编程交换机 230。
1408, STC 210根据确认消息, 将緩存的业务流的第 1个数据包发送给 可编程交换机 230。
1409, 可编程交换机 230根据第一转发表项, 向业务使能器 240c转发 第 1个数据包。
1410, 可编程交换机 230从业务使能器 240c接收处理后的第 1个数据 包。
1411 , 可编程交换机 230根据第一转发表项, 向业务使能器 240a转发 业务使能器 240c处理后的第 1个数据包。
1412, 可编程交换机 230从业务使能器 240a接收处理后的第 1个数据 包。
1413 , 可编程交换机 230根据第一转发表项, 向边界路由器 260发送业 务使能器 240a处理后的第 1个数据包。
1414, STC 210从 GGSN/PGW 250接收业务流的后续数据包。
1415 , STC 210向可编程交换机 230转发后续数据包。
步骤 1416至步骤 1420的过程类似于步骤 1409至 11413的过程, 为了 避免重复, 不再赘述。
应理解, 上述各过程的序号的大小并不意味着执行顺序的先后, 各过程 的执行顺序应以其功能和内在逻辑确定, 而不应对本发明实施例的实施过程 构成任何限定。 例如, 步骤 1408至 1413与步骤 1414至 1420可以并行地执 行。
本发明实施例中,通过业务流分类器生成业务流对应的业务流信息和业 务流类别信息, 其中业务流类别信息用于指示业务流对应的第一业务链, 业 务路径控制器根据业务流信息和业务流类别信息生成可编程交换机对应的 第一转发表项, 可编程交换机根据第一转发表项转发业务流的数据包, 使得 第一业务链的各个业务使能器按照第一顺序处理业务流的数据包,从而能够 提升网络可靠性, 并减小网络时延。
图 15是根据本发明另一实施例的业务路由方法的过程的示意性流程图。 在图 15中, 仍将结合图 2的网络架构描述上行业务流的处理过程。 1501 , STC 210从 GGSN/PGW 250接收业务流的第 1个数据包。
1502, STC 210根据第 1个数据包, 生成业务流对应的业务流信息和业 务流对应的业务流类别信息。
业务流信息可以包括业务流的 IP七元组中的至少一项。
业务流类别信息包括第一业务链表, 第一业务链表指示由业务使能器
240a和 240c组成的第一业务链。 其中在第一业务链中 2个业务使能器按照 第一顺序排列, 此处假设第一顺序为业务使能器 240c排在业务使能器 240a 之前。
1503 , STC 210向 SPC 220发送通知消息, 通知消息包括上述业务流信 息和第一业务链表。
1504, SPC 220根据业务流信息、第一业务链表和系统 200的拓朴信息, 生成可编程交换机 230对应的第一转发表项。
SPC 220还可以根据系统 200的拓朴信息和第一业务链表,生成第一业 务路由模板, 并存储第一业务路由模板。
如果 SPC 220再次收到第一业务链表时,可以通过第一业务链表在第一 对应关系中查找到第一业务路由模板, 直接根据业务流信息和第一业务路由 模板生成第一转发表项。
步骤 1505至 1519类似于图 14中步骤 1406至 1420, 为了避免重复,此 处不再赘述。
应理解, 上述各过程的序号的大小并不意味着执行顺序的先后, 各过程 的执行顺序应以其功能和内在逻辑确定, 而不应对本发明实施例的实施过程 构成任何限定。 例如, 步骤 1507至 1512与步骤 1513至 1519可以并行地执 行。
本发明实施例中,通过业务流分类器生成业务流对应的业务流信息和业 务流类别信息, 其中业务流类别信息用于指示业务流对应的第一业务链, 业 务路径控制器根据业务流信息和业务流类别信息生成可编程交换机对应的 第一转发表项, 可编程交换机根据第一转发表项转发业务流的数据包, 使得 第一业务链的各个业务使能器按照第一顺序处理业务流的数据包,从而能够 提升网络可靠性, 并减小网络时延。
图 16是根据本发明另一实施例的业务路由方法的过程的示意性流程图。 在图 16中, 将结合图 8的网络架构描述上行业务流的处理过程。
1601 , SPC 820从 STC 810接收业务路由规则信息。
业务路由规则信息可以包括至少一个应用类别标识、至少一个业务链表 以及至少一个应用类别标识与至少一个业务链表之间的对应关系。 此处, 殳 设该对应关系包括 2个应用类别标识以及它们各自对应的业务链表, 例如: ( 1 ) App ID 1= "vedio" , App ID 1对应的业务链表内容为: 业务链 1= "业 务使能器 840a, 业务使能器 840c" ; ( 2 ) App ID 2= "no match" , App ID 2 对应的业务链表内容为: 业务链 2= "STC 810"。 其中 App ID 2= "no match" 可以表示第 1个数据包对应的应用类别标识。
SPC 820可以存储该对应关系。 1602,可编程交换机 830从 GGSN/PGW 850接收业务流的第 1个数据包。
由于 GGSN/PGW 850 与可编程交换机 830之间存在第四接口, 因此 GGSN/PGW 850可以通过第四接口直接向可编程交换机 830转发业务流的 第 1个数据包。
1603 , 可编程交换机 830确定是第 1个数据包且没有对应的第一转发表 项, 向 SPC 820发送第 1个数据包的信息。
例如, 可编程交换机 830可以将第 1个数据包的信息封装在 Packet_in 消息中, 向 SPC 820发送 PackeUn消息。
1604, SPC 820接收到第 1个数据包的信息, 根据第 1个数据包的信息 生成第二转发表项, 第二转发表项用于指示向 STC 810发送第 1个数据包。 例如, SPC 820接收到第 1个数据包的信息, 确定是第 1个数据包, 那 么可以确定该数据包的应用类别标识为 App ID 2。 根据 App ID 2对应的业 务链 2, 生成第二转发表项。
1605, SPC 820向可编程交换机 830发送第二转发表项。
1606, 可编程交换机 830根据第二转发表项, 向 STC 810发送第 1个数 据包。
步骤 1607至 1624与图 14中的步骤 1403至 1420类似, 为了避免重复, 此处不再赘述。
应理解, 上述各过程的序号的大小并不意味着执行顺序的先后, 各过程 的执行顺序应以其功能和内在逻辑确定, 而不应对本发明实施例的实施过程 构成任何限定。 例如, 步骤 1612至 1617与步骤 1618至 1624可以并行地执 行。
本发明实施例中,通过业务流分类器生成业务流对应的业务流信息和业 务流类别信息, 其中业务流类别信息用于指示业务流对应的第一业务链, 业 务路径控制器根据业务流信息和业务流类别信息生成可编程交换机对应的 第一转发表项, 可编程交换机根据第一转发表项转发业务流的数据包, 使得 第一业务链的各个业务使能器按照第一顺序处理业务流的数据包,从而能够 提升网络可靠性, 并减小网络时延。
应理解, 图 14至图 16中, 以上行业务流的处理为例进行说明。 而本发 明实施例也适用于下行业务流。 STC还可以在业务流信息中增加一个用于指 示上行业务流或下行业务流的信元。本发明实施例对于上行业务流的处理以 及对于下行业务流的处理可以并行地执行。
图 17是根据本发明另一实施例的业务路径控制器的示意框图。 图 10的 SPC 1700包括接收器 1710、 处理器 1720和发送器 1730。
接收器 1710与第一 STC之间具有第一接口, 发送器 1730与 h个可编 程交换机之间分别具有第二接口。
接收器 1710可以通过第一接口从第一业务流分类器接收通知消息, 通 知消息包括业务流对应的业务流类别信息, 业务流类别信息用于指示业务流 对应的第一业务链,第一业务链由 m个业务使能器中的 k个业务使能器组成, 其中在第一业务链中 k个业务使能器按照第一顺序排列。 处理器 1720可以 根据通知消息生成 i个可编程交换机中每个可编程交换机对应的第一转发表 项, i个可编程交换机与 k个业务使能器中的至少一个相连接, i个可编程交 换机是从 h个可编程交换机中选择的。 发送器 1730可以通过第二接口向 i 个可编程交换机中每个可编程交发送每个可编程交换机对应的第一转发表 项, 以便每个可编程交换机根据每个可编程交换机对应的第一转发表项转发 业务流的数据包, 以使 k个业务使能器按照第一顺序处理业务流的数据包。 其中, h和 m为正整数, k为小于或等于 m的正整数, i为小于或等于 h的 正整数。
本发明实施例中,通过接收第一业务流分类器生成包括业务流类别信息 的通知消息, 其中业务流类别信息用于指示业务流对应的由 k个业务使能器 组成的第一业务链, 并根据通知消息生成与 k个业务使能器相连的 i个可编 程交换机分别对应的第一转发表项, i 个可编程交换机分别根据各自对应的 第一转发表项转发业务流的数据包,使得 k个业务使能器按照第一顺序处理 业务流的数据包, 从而能够提升网络可靠性, 并减小网络时延。
可选地, 作为一个实施例, 通知消息还可以包括业务流对应的业务流信 息, 业务流信息包括以下至少一种: 源媒体接入控制 MAC地址、 目的 MAC 地址、 源网际协议 IP地址、 目的 IP地址、 源端口号、 目的端口号和协议类 型。
可选地, 作为另一实施例, 业务流类别信息可以包括第一业务链表, 第 一业务链表用于指示第一业务链。 处理器 1720可以根据业务路径控制器所 在的业务路由系统的拓朴信息、 第一业务链表和业务流信息生成 i个可编程 交换机中每个可编程交换机对应的第一转发表项,拓朴信息用于指示业务路 由系统的内部拓朴结构以及业务路由系统的外部连接关系。
可选地,作为另一实施例,业务流类别信息可以包括第一应用类别标识, 第一应用类别标识用于指示业务流的应用类别。
处理器 1720可以根据第一应用类别标识以及至少一个应用类别标识与 至少一个业务链表之间的对应关系,确定第一应用类别标识对应的第一业务 链表, 第一业务链表用于指示第一业务链。 处理器 1720根据业务路由系统 的拓朴信息、 第一业务链表以及业务流信息, 生成 i个可编程交换机中每个 可编程交换机对应的第一转发表项,拓朴信息用于指示业务路由系统的内部 拓朴结构以及业务路由系统的外部连接关系。 可选地,作为另一实施例,业务流类别信息可以包括第一应用类别标识。 处理器 1720可以根据第一应用类别标识以及至少一个应用类别标识与 至少一个业务链表之间的对应关系,确定第一应用类别标识对应的第一业务 链表, 第一业务链表用于指示第一业务链。 处理器 1720可以根据业务路由 系统的拓朴信息、 第一业务链表以及第一应用类别标识, 生成 i个可编程交 换机中每个可编程交换机对应的第一转发表项, 其中第一转发表项包括第一 应用类别标识。
可选地, 作为另一实施例, 接收器 1710还可以在处理器 1720生成 i个 可编程交换机中每个可编程交换机对应的第一转发表项之前,接收业务路由 规则信息, 业务路由规则信息包括上述至少一个应用类别标识、 上述至少一 个业务链表以及上述对应关系。
可选地, 作为另一实施例, 接收器 1710还可以在处理器 1720生成 i个 可编程交换机中每个可编程交换机对应的第一转发表项之前,接收业务路由 规则信息, 业务路由规则信息用于指示对上述对应关系进行调整处理, 调整 处理包括以下至少一种: 添加, 删除, 修改。 处理器 1720还可以根据业务 路由规则信息, 对上述对应关系进行调整处理。
可选地, 作为另一实施例, 接收器 1710可以通过第一接口从第一业务 流分类器接收业务路由规则信息。 或者, 接收器 1710可以从 PCRF设备接 收业务路由规则信息。
可选地, 作为另一实施例, 接收器 1710还可以通过第二接口从 h个可 编程交换机中的第 j个可编程交换机接收业务流的第 1个数据包的信息, 其 中第 j个可编程交换机与第一 STC之间具有第三接口。
处理器 1720还可以在确定需要将第 1个数据包需要转发给第一 STC的 情况下, 根据第 1个数据包的信息生成第二转发表项, 其中, 第二转发表项 用于指示向第一 STC转发业务流的数据包。
发送器 1730还可以通过第二接口向第 j个可编程交换机发送第二转发表 项,以便第 j个可编程交换级根据第二转发表项向第一 STC转发业务流的前 n个数据包, 第一 STC根据前 n个数据包生成所述通知消息, n为正整数。
可选地, 作为另一实施例, 接收器 1710还与第二 STC之间具有第一接 口。
SPC 1700的其它功能和操作可以参照图 1至图 9的实施例中涉及 SPC 的功能和操作, 为了避免重复, 此处不再赘述。
图 18是根据本发明另一实施例的业务流分类器的示意框图。 STC 1800 包括处理器 1810和发送器 1820。 发送器 1820与 SPC之间具有第一接口。
处理器 1810根据业务流生成通知消息, 通知消息包括业务流对应的业 务流类别信息, 业务流类别信息用于指示业务流对应的第一业务链, 第一业 务链由 m个业务使能器中的 k个业务使能器组成, 其中在第一业务链中 k 个业务使能器按照第一顺序排列, m均为正整数, k为小于或等于 m的正整 数。 发送器 1820通过第一接口向 SPC发送通知消息。
本发明实施例中, 通过生成包括业务流类别信息的通知消息, 其中业务 流类别信息用于指示业务流对应的第一业务链, 并向业务路径控制器发送通 知消息,使得业务路径控制能够根据通知消息生成与 k个业务使能器相连的 可编程交换机分别对应的第一转发表项,使得可编程交换机根据对应的第一 转发表项转发业务流的数据包以便第一业务链的业务使能器按照第一顺序 处理业务流的数据包, 能够提升网络可靠性, 并减小网络时延。
可选地, 作为一个实施例, 通知消息还可以包括业务流对应的业务流信 息, 业务流信息包括以下至少一种: 源媒体接入控制 MAC地址、 目的 MAC 地址、 源网际协议 IP地址、 目的 IP地址、 源端口号、 目的端口号和协议类 型。
业务流类别信息可以包括第一业务链表, 第一业务链表用于指示第一业 务链; 或者, 业务流类别信息可以包括第一应用类别标识, 第一应用类别标 识用于指示业务流的应用类别。
可选地,作为另一实施例,业务流类别信息可以包括第一应用类别标识, 第一应用类别标识用于指示业务流的应用类别, 第一应用类别标识与第一业 务链相对应。
处理器 1810还可以根据第一应用类别标识, 对业务流的数据包进行封 装。
可选地, 作为另一实施例, STC 1800还可以包括接收器 1830。 接收器 1830与 h个可编程交换机中的第 j个可编程交换机之间具有第三接口, h为 正整数, j为小于或等于 h的正整数。
接收器 1830可以通过第三接口从第 j个可编程交换机接收业务流的前 n 个数据包, n为正整数。 处理器 1810可以根据前 n个数据包生成通知消息。 STC 1800的其它功能和操作可以参照图 1至图 9的实施例涉及 STC的 功能和操作, 为了避免重复, 此处不再赘述。
本领域普通技术人员可以意识到, 结合本文中所公开的实施例描述的各 示例的单元及算法步骤, 能够以电子硬件、 或者计算机软件和电子硬件的结 合来实现。 这些功能究竟以硬件还是软件方式来执行, 取决于技术方案的特 定应用和设计约束条件。 专业技术人员可以对每个特定的应用来使用不同方 法来实现所描述的功能, 但是这种实现不应认为超出本发明的范围。
所属领域的技术人员可以清楚地了解到, 为描述的方便和筒洁, 上述描 述的系统、 装置和单元的具体工作过程, 可以参考前述方法实施例中的对应 过程, 在此不再赘述。
在本申请所提供的几个实施例中, 应该理解到, 所揭露的系统、 装置和 方法, 可以通过其它的方式实现。 例如, 以上所描述的装置实施例仅仅是示 意性的, 例如, 所述单元的划分, 仅仅为一种逻辑功能划分, 实际实现时可 以有另外的划分方式, 例如多个单元或组件可以结合或者可以集成到另一个 系统, 或一些特征可以忽略, 或不执行。 另一点, 所显示或讨论的相互之间 的耦合或直接耦合或通信连接可以是通过一些接口, 装置或单元的间接耦合 或通信连接, 可以是电性, 机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作 为单元显示的部件可以是或者也可以不是物理单元, 即可以位于一个地方, 或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或 者全部单元来实现本实施例方案的目的。
另外, 在本发明各个实施例中的各功能单元可以集成在一个处理单元 中, 也可以是各个单元单独物理存在, 也可以两个或两个以上单元集成在一 个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使 用时, 可以存储在一个计算机可读取存储介质中。 基于这样的理解, 本发明 的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部 分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质 中, 包括若干指令用以使得一台计算机设备(可以是个人计算机, 服务器, 或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。 而前 述的存储介质包括: U盘、移动硬盘、只读存储器( ROM, Read-Only Memory )、 随机存取存储器(RAM, Random Access Memory ), 磁碟或者光盘等各种可 以存储程序代码的介质。
以上所述, 仅为本发明的具体实施方式, 但本发明的保护范围并不局限 于此, 任何熟悉本技术领域的技术人员在本发明揭露的技术范围内, 可轻易 想到变化或替换, 都应涵盖在本发明的保护范围之内。 因此, 本发明的保护 范围应以所述权利要求的保护范围为准。

Claims

权利要求
1. 一种业务路由系统, 其特征在于, 包括:
第一业务流分类器、 业务路径控制器、 h个可编程交换机和 m个业务使 能器, 所述第一业务流分类器与所述业务路径控制器之间具有第一接口, 所 述业务路径控制器与所述 h个可编程交换机之间分别具有第二接口, 所述第 一业务流分类器与所述 h个可编程交换机中第 j个可编程交换机之间具有第 三接口,所述 m个业务使能器中每个业务使能器与所述 h个可编程交换机之 一相连接, 所述 h个可编程交换机之间互连; 其中,
所述第一业务流分类器, 用于^ ^据业务流生成通知消息, 所述通知消息 包括所述业务流对应的业务流类别信息, 所述业务流类别信息用于指示所述 业务流对应的第一业务链, 所述第一业务链由所述 m个业务使能器中的 k 个业务使能器组成, 其中在所述第一业务链中所述 k个业务使能器按照第一 顺序排列;
所述业务路径控制器, 用于通过所述第一接口从所述第一业务流分类器 接收所述通知消息, 根据所述通知消息生成 i个可编程交换机中每个可编程 交换机对应的第一转发表项, 所述 i个可编程交换机与所述 k个业务使能器 中的至少一个相连接, 所述 i个可编程交换机是从所述 h个可编程交换机中 选择的;
所述 i个可编程交换机的每个可编程交换机, 用于通过所述第二接口从 所述业务路径控制器接收所述每个可编程交换机对应的第一转发表项, 并根 据所述每个可编程交换机对应的第一转发表项转发所述业务流的数据包, 以 便所述 k个业务使能器按照所述第一顺序处理所述业务流的数据包;
其中, h、 m和 j均为正整数, k为小于或等于 m的正整数, i为小于或 等于 h的正整数。
2. 根据权利要求 1所述的系统, 其特征在于, 所述通知消息还包括所 述业务流对应的业务流信息, 所述业务流信息包括以下至少一种: 源媒体接 入控制 MAC地址、 目的 MAC地址、 源网际协议 IP地址、 目的 IP地址、 源端口号、 目的端口号和协议类型。
3. 根据权利要求 2所述的系统, 其特征在于, 所述业务流类别信息包 括第一业务链表, 所述第一业务链表用于指示所述第一业务链;
所述业务路径控制器, 具体用于: 根据所述业务路由系统的拓朴信息、所述第一业务链表以及所述业务流 信息生成所述 i个可编程交换机中每个可编程交换机对应的第一转发表项, 所述拓朴信息用于指示所述业务路由系统的内部拓朴结构以及所述业务路 由系统的外部连接关系。
4. 根据权利要求 2所述的系统, 其特征在于, 所述业务流类别信息包 括第一应用类别标识,所述第一应用类别标识用于指示所述业务流的应用类 另^
所述业务路径控制器, 具体用于:
根据所述第一应用类别标识以及至少一个应用类别标识与至少一个业 务链表之间的对应关系, 确定所述第一应用类别标识对应的第一业务链表, 所述第一业务链表用于指示所述第一业务链;
根据所述业务路由系统的拓朴信息、所述第一业务链表以及所述业务流 信息,生成所述 i个可编程交换机中每个可编程交换机对应的第一转发表项, 所述拓朴信息用于指示所述业务路由系统的内部拓朴结构以及所述业务路 由系统的外部连接关系。
5. 根据权利要求 1所述的系统, 其特征在于, 所述业务流类别信息包 括第一应用类别标识, 所述第一应用类别标识用于指示所述业务流的应用类 另^
所述业务路径控制器, 具体用于:
根据所述第一应用类别标识以及至少一个应用类别标识与至少一个业 务链表之间的对应关系, 确定所述第一应用类别标识对应的第一业务链表, 所述第一业务链表用于指示所述第一业务链;
根据所述业务路由系统的拓朴信息、所述第一业务链表以及所述第一应 用类别标识, 生成所述 i个可编程交换机中每个可编程交换机对应的第一转 发表项, 其中所述第一转发表项包括所述第一应用类别标识, 所述拓朴信息 用于指示所述业务路由系统的内部拓朴结构以及所述业务路由系统的外部 连接关系。
6. 根据权利要求 5所述的系统, 其特征在于, 所述第一业务流分类器 还用于根据所述第一应用类别标识对所述业务流的数据包进行封装。
7. 根据权利要求 4至 6中任一项所述的系统, 其特征在于, 所述业务 路径控制器还用于: 在生成所述 i个可编程交换机中每个可编程交换机对应的第一转发表项 之前, 接收业务路由规则信息, 所述业务路由规则信息包括所述至少一个应 用类别标识、 所述至少一个业务链表以及所述对应关系。
8. 根据权利要求 4至 6中任一项所述的系统, 其特征在于, 所述业务 路径控制器具体用于:
在生成所述 i个可编程交换机中每个可编程交换机对应的第一转发表项 之前, 接收业务路由规则信息, 所述业务路由规则信息用于指示对所述对应 关系进行调整处理, 所述调整处理包括以下至少一种: 添加, 删除, 修改; 根据所述业务路由规则信息, 对所述对应关系进行调整处理。
9. 根据权利要求 7或 8中任一项所述的系统, 其特征在于,
所述第一业务流分类器还用于获取所述业务路由规则信息, 所述业务路 径控制器具体用于通过所述第一接口从所述第一业务流分类器接收所述业 务路由规则信息; 或者,
所述业务路径控制器具体用于从策略与计费规则功能 PCRF设备接收所 述业务路由规则信息。
10. 根据权利要求 9所述的系统, 其特征在于, 所述第一业务流分类器 具体用于从所述 PCRF设备接收所述业务路由规则信息。
11. 根据权利要求 1至 10中任一项所述的系统, 其特征在于, 所述第 j 个可编程交换机, 用于在所述第一业务流分类器根据业务流生成所述通知消 息之前, 通过所述第三接口向所述第一业务流分类器发送所述业务流的前 n 个数据包, n为正整数;
所述第一业务流分类器,具体用于根据所述前 n个数据包确定所述通知 消息。
12. 根据权利要求 11所述的系统, 其特征在于, 所述第 j个可编程交换 机, 还用于: 在通过所述第三接口向所述第一业务流分类器发送所述前 n个 数据包之前, 接收所述业务流的第 1个数据包;
所述业务路径控制器, 还用于: 通过所述第二接口从所述第 j个可编程 交换机接收所述第 1个数据包的信息, 并在确定需要将所述第 1个数据包需 要转发给所述第一业务流分类器的情况下,根据所述第 1个数据包的信息生 成第二转发表项, 其中, 所述第二转发表项用于指示向所述第一业务流分类 器转发所述业务流的数据包; 所述第 j个可编程交换机, 还用于: 通过所述第二接口从所述业务路径 控制器接收所述第二转发表项;
所述第 j个可编程交换机, 具体用于根据所述第二转发表项通过所述第 三接口向所述第一业务流分类器转发所述前 n个数据包。
13. 根据权利要求 12所述的系统, 其特征在于, 所述第 j个可编程交换 机与移动网关之间具有第四接口;
所述第 j个可编程交换机, 具体用于通过所述第四接口从所述移动网关 接收所述第一个数据包。
14. 根据权利要求 1至 13中任一项所述的系统, 其特征在于, 所述第一业务流分类器位于在移动网关与所述第 j 个可编程交换机之 间; 或者,
所述第一业务流分类器位于移动网关内部。
15. 根据权利要求 1至 14中任一项所述的系统, 其特征在于, 所述系 统还包括第二业务流分类器;
所述第二业务流分类器与所述业务路径控制器之间具有所述第一接口, 所述第二业务流分类器与所述 h个可编程交换机中的第 p个可编程交换机之 间具有所述第三接口, p为小于或等于 h的正整数。
16. 一种业务路径控制器, 其特征在于, 包括:
接收单元、 生成单元和发送单元, 所述接收单元与第一业务流分类器之 间具有第一接口;
所述接收单元, 用于通过所述第一接口从所述第一业务流分类器接收通 知消息, 通知消息包括业务流对应的业务流类别信息, 所述业务流类别信息 用于指示所述业务流对应的第一业务链, 所述第一业务链由一个或多个按照 第一顺序排列的业务使能器组成;
所述生成单元, 用于根据所述通知消息生成一个或多个可编程交换机分 别对应的第一转发表项;
所述发送单元, 用于向所述一个或多个可编程交换机发送每个可编程交 换机对应的第一转发表项, 以便所述可编程交换机根据所述可编程交换机对 应的第一转发表项转发所述业务流的数据包, 以使所述一个或多个业务使能 器按照所述第一顺序处理所述业务流的数据包。
17. 根据权利要求 16所述的业务路径控制器, 其特征在于, 所述发送 单元与 h个可编程交换机之间具有第二接口;
所述第一业务链由 m个业务使能器中的 k个业务使能器组成,其中在所 述第一业务链中所述 k个业务使能器按照第一顺序排列;
所述生成单元具体用于根据所述通知消息生成 i个可编程交换机中每个 可编程交换机对应的第一转发表项, 所述 i个可编程交换机与所述 k个业务 使能器中的至少一个相连接, 所述 i个可编程交换机是从所述 h个可编程交 换机中选择的;
其中, h和 m为正整数, k为小于或等于 m的正整数, i为小于或等于 h的正整数。
18. 根据权利要求 17所述的业务路径控制器, 其特征在于, 所述通知 消息还包括所述业务流对应的业务流信息,所述业务流信息包括以下至少一 种: 源媒体接入控制 MAC地址、 目的 MAC地址、 源网际协议 IP地址、 目 的 IP地址、 源端口号、 目的端口号和协议类型。
19. 根据权利要求 18所述的业务路径控制器, 其特征在于, 所述业务 流类别信息包括第一业务链表, 所述第一业务链表用于指示所述第一业务 链;
所述生成单元, 具体用于: 根据所述业务路径控制器所在的业务路由系 统的拓朴信息、 所述第一业务链表和所述业务流信息生成所述 i个可编程交 换机中每个可编程交换机对应的第一转发表项。
20. 根据权利要求 18所述的业务路径控制器, 其特征在于, 所述业务 流类别信息包括第一应用类别标识,所述第一应用类别标识用于指示所述业 务流的应用类别;
所述生成单元, 具体用于:
根据所述第一应用类别标识以及至少一个应用类别标识与至少一个业 务链表之间的对应关系, 确定所述第一应用类别标识对应的第一业务链表, 所述第一业务链表用于指示所述第一业务链;
根据业务路由系统的拓朴信息、 所述第一业务链表以及所述业务流信 息, 生成所述 i个可编程交换机中每个可编程交换机对应的第一转发表项。
21. 根据权利要求 17所述的业务路径控制器, 其特征在于, 所述业务 流类别信息包括第一应用类别标识;
所述生成单元, 具体用于: 根据所述第一应用类别标识以及至少一个应用类别标识与至少一个业 务链表之间的对应关系, 确定所述第一应用类别标识对应的第一业务链表, 所述第一业务链表用于指示所述第一业务链;
根据业务路由系统的拓朴信息、所述第一业务链表以及所述第一应用类 别标识, 生成所述 i个可编程交换机中每个可编程交换机对应的第一转发表 项, 其中所述第一转发表项包括所述第一应用类别标识。
22. 根据权利要求 20或 21所述的业务路径控制器, 其特征在于, 所述接收单元, 还用于: 在所述生成单元生成所述 i个可编程交换机中 每个可编程交换机对应的第一转发表项之前, 接收业务路由规则信息, 所述 业务路由规则信息包括所述至少一个应用类别标识、所述至少一个业务链表 以及所述对应关系。
23. 根据权利要求 20或 21所述的业务路径控制器, 其特征在于, 所述接收单元, 还用于在所述生成单元生成所述 i个可编程交换机中每 个可编程交换机对应的第一转发表项之前, 接收业务路由规则信息, 所述业 务路由规则信息用于指示对所述对应关系进行调整处理,所述调整处理包括 以下至少一种: 添加, 删除, 爹改;
所述生成单元, 还用于根据所述业务路由规则信息, 对所述对应关系进 行调整处理。
24. 根据权利要求 22或 23所述的业务路径控制器,
所述接收单元具体用于通过所述第一接口从所述第一业务流分类器接 收所述业务路由规则信息; 或者,
所述接收单元具体用于从策略与计费规则功能 PCRF设备接收所述业务 路由规则信息。
25. 根据权利要求 17至 24中任一项所述的业务路径控制器, 其特征在 于,
所述接收单元,还用于通过所述第二接口从所述 h个可编程交换机中的 第 j个可编程交换机接收所述业务流的数据包的信息, 其中所述第 j个可编 程交换机与所述第一业务流分类器之间具有第三接口;
所述生成单元,还用于当需要将所述业务流的数据包需要转发给所述第 一业务流分类器时, 根据所述业务流的数据包的信息生成第二转发表项, 其 中,所述第二转发表项用于指示向所述第一业务流分类器转发所述业务流的 数据包;
所述发送单元, 还用于通过所述第二接口向所述第 j个可编程交换机发 送所述第二转发表项, 以便所述第 j个可编程交换机根据所述第二转发表项 向所述第一业务流分类器转发所述业务流的数据包, 所述第一业务流分类器 根据所述业务流的数据包生成所述通知消息。
26. 根据权利要求 25所述的业务路径控制器, 其特征在于, 在所述第 j 个可编程交换机中没有所述业务流的数据包对应的转发表项, 或者
在所述第 j个可编程交换机中所述业务流的数据包对应的转发表项指示 所述第 j个可编程交换机向所述业务路径控制器发送所述业务流的数据包的 信息。
27. 根据权利要求 16至 26中任一项所述的业务路径控制器, 其特征在 于, 所述接收单元还与第二业务流分类器之间具有所述第一接口。
28. 一种业务流分类器, 其特征在于, 包括:
生成单元和发送单元, 所述发送单元与业务路径控制器之间具有第一接 口;
所述生成单元, 用于根据业务流生成通知消息, 所述通知消息包括所述 业务流对应的业务流类别信息, 所述业务流类别信息用于指示所述业务流对 应的第一业务链, 所述第一业务链由一个或多个按照第一顺序排列的业务使 能器组成;
所述发送单元, 用于通过所述第一接口向所述业务路径控制器发送所述 通知消息。
29. 根据权利要求 28所述的业务流分类器, 其特征在于, 所述第一业 务链由 m个业务使能器中的 k个业务使能器组成,其中在所述第一业务链中 所述 k个业务使能器按照第一顺序排列, m为正整数, k为小于或等于 m的 正整数。
30. 根据权利要求 28或 29所述的业务流分类器, 其特征在于, 所述通 知消息还包括所述业务流对应的业务流信息, 所述业务流信息包括以下至少 一种: 源媒体接入控制 MAC地址、 目的 MAC地址、 源网际协议 IP地址、 目的 IP地址、 源端口号、 目的端口号和协议类型;
所述业务流类别信息包括第一业务链表, 所述第一业务链表用于指示所 述第一业务链; 或者, 所述业务流类别信息包括第一应用类别标识, 所述第 一应用类别标识用于指示所述业务流的应用类别。
31. 根据权利要求 28或 29所述的业务流分类器, 其特征在于, 还包括 封装单元;
所述业务流类别信息包括第一应用类别标识,所述第一应用类别标识用 于指示所述业务流的应用类别,所述第一应用类别标识与所述第一业务链相 对应;
所述封装单元, 用于根据所述第一应用类别标识, 对所述业务流的数据 包进行封装。
32.根据权利要求 28至 31中任一项所述的业务流分类器,其特征在于, 还包括接收单元, 所述接收单元与 h个可编程交换机中的第 j个可编程交换 机之间具有第三接口, h为正整数, j为小于或等于 h的正整数;
所述接收单元, 用于通过所述第三接口从所述第 j个可编程交换机接收 所述业务流的数据包;
所述确定单元, 具体用于根据所述业务流的数据包生成所述通知消息。
33. 一种业务路由方法, 其特征在于, 包括:
从第一业务流分类器接收通知消息, 所述通知消息包括业务流对应的业 务流类别信息, 所述业务流类别信息用于指示所述业务流对应的第一业务 链, 所述第一业务链由一个或多个按照第一顺序排列的业务使能器组成; 根据所述通知消息生成一个或多个可编程交换机分别对应的第一转发 表项;
向所述一个或多个可编程交换机发送每个可编程交换机对应的第一转 发表项, 以便所述可编程交换机根据所述可编程交换机对应的第一转发表项 转发所述业务流的数据包, 以使所述一个或多个业务使能器按照所述第一顺 序处理所述业务流的数据包。
34. 根据权利要求 33所述的方法, 其特征在于, 所述第一业务链由 m 个业务使能器中的 k个业务使能器组成, 其中在所述第一业务链中所述 k个 业务使能器按照第一顺序排列;
根据所述通知消息生成一个或多个可编程交换机分别对应的第一转发 表项, 包括:
根据所述通知消息生成 i个可编程交换机中每个可编程交换机对应的第 一转发表项, 所述 i个可编程交换机与所述 k个业务使能器中的至少一个相 连接, 所述 i个可编程交换机是从 h个可编程交换机中选择的; 其中, h和 m为正整数, k为小于或等于 m的正整数, i为小于或等于 h的正整数。
35. 根据权利要求 34所述的方法, 其特征在于, 所述通知消息还包括 所述业务流对应的业务流信息, 所述业务流信息包括以下至少一种: 源媒体 接入控制 MAC地址、 目的 MAC地址、 源网际协议 IP地址、 目的 IP地址、 源端口号、 目的端口号和协议类型。
36. 根据权利要求 35所述的方法, 其特征在于, 所述业务流类别信息 包括第一业务链表, 所述第一业务链表用于指示所述第一业务链;
所述根据所述通知消息生成 i个可编程交换机中每个可编程交换机对应 的第一转发表项, 包括:
根据业务路由系统的拓朴信息、 所述第一业务链表以及所述业务流信 息, 生成所述 i个可编程交换机中每个可编程交换机对应的第一转发表项。
37. 根据权利要求 35所述的方法, 其特征在于, 所述业务流类别信息 包括第一应用类别标识,所述第一应用类别标识用于指示所述业务流的应用 类别;
所述根据所述通知消息生成 i个可编程交换机中每个可编程交换机对应 的第一转发表项, 包括:
根据所述第一应用类别标识以及至少一个应用类别标识与至少一个业 务链表之间的对应关系, 确定所述第一应用类别标识对应的第一业务链表, 所述第一业务链表用于指示所述第一业务链;
根据业务路由系统的拓朴信息、 所述第一业务链表和所述业务流信息, 生成所述 i个可编程交换机中每个可编程交换机对应的第一转发表项。
38. 根据权利要求 34所述的方法, 其特征在于, 所述业务流类别信息 包括第一应用类别标识;
所述根据所述通知消息生成 i个可编程交换机中每个可编程交换机对应 的第一转发表项, 包括:
根据所述第一应用类别标识以及至少一个应用类别标识与至少一个业 务链表之间的对应关系, 确定所述第一应用类别标识对应的第一业务链表, 所述第一业务链表用于指示所述第一业务链;
根据业务路由系统的拓朴信息、所述第一业务链表以及所述第一应用类 别标识, 生成所述 i个可编程交换机中每个可编程交换机对应的第一转发表 项, 其中所述第一转发表项包括所述第一应用类别标识。
39. 根据权利要求 37或 38所述的方法, 其特征在于, 还包括: 在生成所述 i个可编程交换机中每个可编程交换机对应的第一转发表项 之前, 接收业务路由规则信息, 所述业务路由规则信息包括所述至少一个应 用类别标识、 所述至少一个业务链表以及所述对应关系。
40. 根据权利要求 37或 38所述的方法, 其特征在于, 还包括: 在生成所述 i个可编程交换机中每个可编程交换机对应的第一转发表项 之前, 接收业务路由规则信息, 所述业务路由规则信息用于指示对所述对应 关系进行调整处理, 所述调整处理包括以下至少一种: 添加, 删除, 修改; 根据所述业务路由规则信息, 对所述对应关系进行调整处理。
41. 根据权利要求 39或 40所述的方法, 其特征在于, 所述接收业务路 由规则信息, 包括:
从所述第一业务流分类器接收所述业务路由规则信息; 或者,
从策略与计费规则功能 PCRF设备接收所述业务路由规则信息。
42. 根据权利要求 34至 41中任一项所述的方法,其特征在于,还包括: 从所述 h个可编程交换机中的第 j个可编程交换机接收所述业务流的数 据包的信息, j为小于或等于 h的正整数;
当需要将所述业务流的数据包需要转发给所述第一业务流分类器时,根 据所述业务流的数据包的信息生成第二转发表项, 其中, 所述第二转发表项 用于指示向所述第一业务流分类器转发所述业务流的数据包;
向所述第 j个可编程交换机发送所述第二转发表项, 以便所述第 j个可 编程交换机根据所述第二转发表项向所述第一业务流分类器转发所述业务 流的数据包, 所述第一业务流分类器根据所述数据包生成所述通知消息。
43. 根据权利要求 39所述的方法, 其特征在于,
在所述可编程交换机中所述业务流的数据包没有对应的转发表项, 或者 在所述可编程交换机中所述业务流的数据包对应的转发表项指示所述 可编程交换机向业务路径控制器发送所述业务流的数据包的信息。
44. 一种业务路由方法, 其特征在于, 包括:
根据业务流生成通知消息, 所述通知消息包括所述业务流对应的业务流 类别信息, 所述业务流类别信息用于指示所述业务流对应的第一业务链, 所 述第一业务链由一个或多个按照第一顺序排列的业务使能器组成; 向业务路径控制器发送所述通知消息。
45. 根据权利要求 44所述的方法, 其特征在于, 所述第一业务链由 m 个业务使能器中的 k个业务使能器组成, 其中在所述第一业务链中所述 k个 业务使能器按照第一顺序排列, m均为正整数, k为小于或等于 m的正整数。
46. 根据权利要求 44或 45所述的方法, 其特征在于, 所述通知消息还 包括所述业务流对应的业务流信息, 所述业务流信息包括以下至少一种: 源 媒体接入控制 MAC地址、 目的 MAC地址、 源网际协议 IP地址、 目的 IP 地址、 源端口号、 目的端口号和协议类型;
所述业务流类别信息包括第一业务链表, 所述第一业务链表用于指示所 述第一业务链; 或者, 所述业务流类别信息包括第一应用类别标识, 所述第 一应用类别标识用于指示所述业务流的应用类别。
47. 根据权利要求 44或 45所述的方法, 其特征在于, 所述业务流类别 信息包括第一应用类别标识, 所述第一应用类别标识用于指示所述业务流的 应用类别;
所述方法还包括:
根据所述第一应用类别标识, 对所述业务流的数据包进行封装。
48. 根据权利要求 44至 47中任一项所述的方法,其特征在于,还包括: 从 h个可编程交换机中的第 j个可编程交换机接收所述业务流的数据包; 所述根据业务流生成通知消息, 包括:
根据所述业务流的数据包生成通知消息。
PCT/CN2013/076148 2013-05-23 2013-05-23 业务路由系统、设备和方法 WO2014186963A1 (zh)

Priority Applications (4)

Application Number Priority Date Filing Date Title
EP13885260.3A EP2993835B1 (en) 2013-05-23 2013-05-23 Service routing system, device and method
CN201380004576.9A CN104322019B (zh) 2013-05-23 2013-05-23 业务路由系统、设备和方法
PCT/CN2013/076148 WO2014186963A1 (zh) 2013-05-23 2013-05-23 业务路由系统、设备和方法
US14/947,776 US20160080253A1 (en) 2013-05-23 2015-11-20 Service routing system, device, and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2013/076148 WO2014186963A1 (zh) 2013-05-23 2013-05-23 业务路由系统、设备和方法

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US14/947,776 Continuation US20160080253A1 (en) 2013-05-23 2015-11-20 Service routing system, device, and method

Publications (1)

Publication Number Publication Date
WO2014186963A1 true WO2014186963A1 (zh) 2014-11-27

Family

ID=51932721

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2013/076148 WO2014186963A1 (zh) 2013-05-23 2013-05-23 业务路由系统、设备和方法

Country Status (4)

Country Link
US (1) US20160080253A1 (zh)
EP (1) EP2993835B1 (zh)
CN (1) CN104322019B (zh)
WO (1) WO2014186963A1 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107204866A (zh) * 2016-03-18 2017-09-26 上海有云信息技术有限公司 基于vxlan技术解决多租户服务链传输的实现方法
CN108574647A (zh) * 2017-03-13 2018-09-25 上海诺基亚贝尔股份有限公司 交换机和分类器以及相关方法
CN113630348A (zh) * 2021-09-17 2021-11-09 上海电信科技发展有限公司 多路由数据的转发方法及其系统

Families Citing this family (30)

* 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
US10069649B2 (en) * 2013-11-06 2018-09-04 Citrix Systems, Inc. Systems and methods for performing service tag switching in an application delivery controller
CN104954245B (zh) * 2014-03-27 2019-07-16 中兴通讯股份有限公司 业务功能链处理方法及装置
WO2015192344A1 (zh) * 2014-06-18 2015-12-23 华为技术有限公司 一种控制业务数据流的方法及装置
US9774537B2 (en) 2014-09-30 2017-09-26 Nicira, Inc. Dynamically adjusting load balancing
US9531590B2 (en) 2014-09-30 2016-12-27 Nicira, Inc. Load balancing across a group of load balancers
US10516568B2 (en) 2014-09-30 2019-12-24 Nicira, Inc. Controller driven reconfiguration of a multi-layered application or service model
JP6472876B2 (ja) * 2014-10-17 2019-02-20 インテル アイピー コーポレイション コンピュータ・プログラム、装置及び記憶媒体
US10609091B2 (en) 2015-04-03 2020-03-31 Nicira, Inc. Method, apparatus, and system for implementing a content switch
WO2017020203A1 (zh) * 2015-07-31 2017-02-09 华为技术有限公司 路由规则的获取方法、设备和系统
US10182019B2 (en) * 2016-02-25 2019-01-15 Telefonaktiebolaget Lm Ericsson (Publ) Interconnected hardware infrastructure resource control
US10348648B2 (en) * 2016-05-17 2019-07-09 Cisco Technology, Inc. Service chain overlay network operations visibility via data packets
US10425667B2 (en) * 2016-10-03 2019-09-24 Cisco Technology, Inc. Network layer transport of video characteristics for use by network function in a service function chain
CN108259335B (zh) 2017-03-31 2020-09-08 新华三技术有限公司 路径探测方法和装置
US10805181B2 (en) 2017-10-29 2020-10-13 Nicira, Inc. Service operation chaining
US11012420B2 (en) 2017-11-15 2021-05-18 Nicira, Inc. Third-party service chaining using packet encapsulation in a flow-based forwarding element
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
CN110768884B (zh) * 2018-07-25 2021-10-15 华为技术有限公司 Vxlan报文封装及策略执行方法、设备、系统
US10944673B2 (en) 2018-09-02 2021-03-09 Vmware, Inc. Redirection of data messages at logical network gateway
US11595250B2 (en) 2018-09-02 2023-02-28 Vmware, Inc. Service insertion at logical network gateway
US11042397B2 (en) 2019-02-22 2021-06-22 Vmware, Inc. Providing services with guest VM mobility
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
US11277331B2 (en) 2020-04-06 2022-03-15 Vmware, Inc. Updating connection-tracking records at a network edge using flow programming
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

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1901498A (zh) * 2006-07-21 2007-01-24 华为技术有限公司 一种实现单pvc多业务的方法和接入设备
US20100082737A1 (en) * 2008-09-26 2010-04-01 Carlson Marketing Worldwide, Inc. Dynamic service routing
US8001214B2 (en) * 2009-02-12 2011-08-16 Oracle America, Inc. Method and system for processing a request sent over a network
CN102195855A (zh) * 2010-03-17 2011-09-21 华为技术有限公司 一种业务路由方法和业务网络
CN102571602A (zh) * 2012-02-13 2012-07-11 华为技术有限公司 业务路由网络及业务处理的方法、设备

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7860100B2 (en) * 2008-10-01 2010-12-28 Cisco Technology, Inc. Service path selection in a service network
EP2408155A4 (en) * 2009-03-09 2015-01-28 Nec Corp OPENFLOW COMMUNICATION SYSTEM AND OPENFLOW COMMUNICATION METHOD
CN102136990B (zh) * 2010-06-09 2013-11-06 华为技术有限公司 一种业务叠加网络的业务路由方法及系统
US8743885B2 (en) * 2011-05-03 2014-06-03 Cisco Technology, Inc. Mobile service routing in a network environment
US9258243B2 (en) * 2013-05-10 2016-02-09 Cisco Technology, Inc. Symmetric service chain binding

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1901498A (zh) * 2006-07-21 2007-01-24 华为技术有限公司 一种实现单pvc多业务的方法和接入设备
US20100082737A1 (en) * 2008-09-26 2010-04-01 Carlson Marketing Worldwide, Inc. Dynamic service routing
US8001214B2 (en) * 2009-02-12 2011-08-16 Oracle America, Inc. Method and system for processing a request sent over a network
CN102195855A (zh) * 2010-03-17 2011-09-21 华为技术有限公司 一种业务路由方法和业务网络
CN102571602A (zh) * 2012-02-13 2012-07-11 华为技术有限公司 业务路由网络及业务处理的方法、设备

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP2993835A4 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107204866A (zh) * 2016-03-18 2017-09-26 上海有云信息技术有限公司 基于vxlan技术解决多租户服务链传输的实现方法
CN108574647A (zh) * 2017-03-13 2018-09-25 上海诺基亚贝尔股份有限公司 交换机和分类器以及相关方法
CN108574647B (zh) * 2017-03-13 2021-05-18 上海诺基亚贝尔股份有限公司 交换机和分类器以及相关方法
CN113630348A (zh) * 2021-09-17 2021-11-09 上海电信科技发展有限公司 多路由数据的转发方法及其系统

Also Published As

Publication number Publication date
EP2993835A4 (en) 2016-08-03
EP2993835A1 (en) 2016-03-09
CN104322019A (zh) 2015-01-28
CN104322019B (zh) 2017-11-07
EP2993835B1 (en) 2018-07-11
US20160080253A1 (en) 2016-03-17

Similar Documents

Publication Publication Date Title
WO2014186963A1 (zh) 业务路由系统、设备和方法
US9167501B2 (en) Implementing a 3G packet core in a cloud computer with openflow data and control planes
US9954779B2 (en) Method, apparatus, and system for supporting flexible lookup keys in software-defined networks
US9497661B2 (en) Implementing EPC in a cloud computer with openflow data plane
CN109889443B (zh) 云计算系统和在云计算系统中实现演进分组核心(epc)的控制平面的方法
AU2012303738B2 (en) Implementing a 3G packet core in a cloud computer with openflow data and control planes
Li et al. Source routing with protocol-oblivious forwarding (POF) to enable efficient e-health data transfers
US8867349B2 (en) Regulation of network traffic in virtual private networks
EP3140964B1 (en) Implementing a 3g packet core in a cloud computer with openflow data and control planes
US20200396162A1 (en) Service function chain sfc-based communication method, and apparatus
US20130259060A1 (en) Method and apparatus for sending packet
WO2022062506A1 (zh) 一种数据处理方法、装置、存储介质及电子装置
CN110945837A (zh) 优化sdn中的服务节点监视
CN104243270A (zh) 一种建立隧道的方法和装置
WO2016107379A1 (zh) 一种发送报文的方法和装置
EP3836492A1 (en) Pseudo wire load sharing method and device
WO2018162953A1 (en) Optimizing tunnel monitoring in sdn
CN104935506B (zh) 可选择的服务节点资源
WO2022068244A1 (zh) 网络配置的发送方法及装置、存储介质、电子装置
WO2011113358A1 (zh) 用于ip网络的路由转发方法及网络设备
US20220166721A1 (en) Traffic balancing method, network device, and electronic device
WO2015039616A1 (zh) 一种报文处理方法及设备
Tayeb et al. An Evaluative Analysis of DUAL, SPF, and Bellman-Ford
WO2024060590A1 (zh) 确定性业务报文的转发方法、边界路由器及控制器
Sequeira CCIE Routing and Switching Exam Quick Reference: Exam 350-001 V3. 1

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 13885260

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 2013885260

Country of ref document: EP