CN107078950B - 用于建立服务链的方法、装置和计算机可读存储介质 - Google Patents
用于建立服务链的方法、装置和计算机可读存储介质 Download PDFInfo
- Publication number
- CN107078950B CN107078950B CN201580057574.5A CN201580057574A CN107078950B CN 107078950 B CN107078950 B CN 107078950B CN 201580057574 A CN201580057574 A CN 201580057574A CN 107078950 B CN107078950 B CN 107078950B
- Authority
- CN
- China
- Prior art keywords
- service
- network
- segment
- extract
- header
- 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
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/302—Route determination based on requested QoS
- H04L45/306—Route determination based on the nature of the carried application
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/38—Flow based routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/24—Traffic characterised by specific attributes, e.g. priority or QoS
- H04L47/2475—Traffic characterised by specific attributes, e.g. priority or QoS for supporting traffic characterised by the type of applications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
与多个网络节点进行通信的控制器建立针对由要在多个网络节点中的一个或多个网络节点的相应网络节点处执行的有序服务功能序列所定义的服务链的服务路径。控制器为服务链中仅包括不能对分组进行解封装以提取网络服务报头的一个或多个网络节点的段分配预定服务路径标识符和预定服务索引值,以便将被确定不能对分组进行解封装以提取网络服务报头的一个或多个网络节点指定为服务链中的单个服务跳跃段。
Description
技术领域
本公开涉及用于服务链/服务路径的联网。
背景技术
服务链涉及流量(分组/帧)的截取并通过有序服务功能集来引导它们。通过在网络节点使用分类器功能来截取流量,以便通过服务功能来进行引导。通过使用网络中的服务覆盖来执行通过服务功能对来自分类器的流量进行流量引导。该服务覆盖提供了用于运载除了原始分组之外的服务元数据的配设。
通过控制平面(集中式的或分布式的)来构建、维护以及分发服务链及相应的转发状态。服务链构建涉及建立转发状态和服务链之间的绑定。转发状态到服务链的该映射被称为服务路径。
附图说明
图1是根据示例实施例的具有不同网络服务报头处理能力的网络节点的服务链的框图。
图2是类似于图1的框图,并且示出了根据示例实施例的如何将服务链拆分为针对具有网络服务报头处理能力的网络节点以及不具有网络服务报头处理能力的网络节点的不同的段。
图3是描绘了根据示例实施例的在控制器处执行以建立具有能够处理网络服务报头的网络节点以及不能处理网络服务报头的网络节点的服务链的操作的流程图。
图4是描绘了根据示例实施例的被封装在传输报头和网络服务报头中的分组的示图。
图5是根据示例实施例的网络节点的框图的示例。
图6是根据示例实施例的与多个网络节点进行通信的控制器的框图的示例。
具体实施方式
概览
本文呈现了在包括多个网络节点的网络中有用的技术,网络中的每个网络节点被配置为对通过相应网络节点的流量应用一个或多个服务功能。与多个网络节点进行通信的控制器建立针对由要在多个网络节点中的一个或多个网络节点的相应网络节点处执行的有序服务功能序列所定义的服务链的服务路径。服务路径的一个或多个网络节点能够对流量的分组进行解封装以提取网络服务报头,该网络服务报头包括指导如何通过服务链来转发分组的服务链转发信息以及针对服务链转发信息的上下文服务路径信息,并且服务路径的一个或多个网络节点不能对分组进行解封装以提取网络服务报头。控制器为服务链中仅包括不能对分组进行解封装以提取网络服务报头的一个或多个网络节点的段分配预定服务路径标识符和预定服务索引值,以便将被确定不能对分组进行解封装以提取网络服务报头的一个或多个网络节点指定为服务链中的单个服务跳跃段。
示例实施例
服务链被定义为服务功能的集合,例如,防火墙,网络地址转换 (NAT)、深度分组检测(DPI)、入侵检测服务(IDS)、以及当选择的分组被转发通过服务路径时应被应用于这些分组的顺序。该形式的服务链虽然有用,但不能为依赖于服务策略到粒度信息(例如,每个订户状态) 的绑定的更复杂服务的传递或被具体地格式化用于由具体服务功能来消耗的元数据的接收提供足够的功能。被具体地格式化用于由具体服务功能来消耗的元数据的示例包括应用标识、流标识符以及用户身份。这类高级服务要求服务上下文和元数据作为数据平面封装的一部分被运载在服务报头内部。
服务节点利用数据平面中的服务报头内部所运载的信息,例如,用于导出目标服务策略和配置文件的网络标识。服务节点还可确定与具体服务相关的公共元数据,例如,可被传递到服务路径更下游的服务功能的更精细分类。换句话说,服务从衍生自网络以及形成给定服务链的服务功能二者的元数据获益。元数据还可以在网络节点之间被传递并且用于例如确定服务链的端处的转发状态。
发起服务链的网络节点所强加的元数据是中央控制器所推送的元数据和网络节点本身所确定的元数据的组合。控制器将网络分类特定元数据推送到用作分类器的所有网络节点(在本文还称为分类器节点)。这些网络节点执行分类并选择针对该分类所分配的元数据以及转发状态。所确定的元数据可以与服务拓扑的方面(例如,租户身份)有关。将这类元数据与转发状态相关联并将其传递给提供服务的功能的含义是可以例如在给定服务路径的租户边界上传递更复杂的服务。这可以由于服务不需要导出信息或重新分类每个分组/流而产生更简单的服务。
网络服务报头(NSH)被定义为能够在数据平面中支持服务链。NSH 提供了与用于流量引导的传输封装无关的服务覆盖,以及允许服务来交换信息的元数据能力。
支持基于NSH的分组引导涉及参与节点(网络和/或服务)向NSH报头咨询服务路径标识符和服务索引以便导出所需的(一个或多个)网络路径。然而,在一些情况下,参与节点不支持NSH转发(例如,针对对于客户重要的传统服务)或具有用于提供显式路径选择(例如,段路由)的另一机制。尽管NSH不为这些部署提供路径选择,但强制上下文报头中所运载的NSH元数据仍是有用的。
本文呈现了用于非NSH网络段通过使用透明NSH路径代理来参与 NSH感知服务链的技术,该透明NSH路径代理被视为服务层的单个跳跃 (hop)并且通过控制平面元件来集中定义。
现在参考图1,图1是对可以采用本文所呈现的技术的示例网络环境的描述。在图1的示例中,示出了包括多个网络节点(还称为“服务节点”或简称为“节点”)(例如,四个节点20(1)-20(4))以及分类器节点30的服务链10。每个节点20(1)-20(4)分别执行服务功能40(1)-40(4)。在附图中,节点20(1)-20(4)还分别被标记为节点1- 节点4,并且服务功能40(1)-40(4)还分别被表示为SF1-SF4。节点可执行多个服务功能,但为简单起见,图1示出每个节点执行单个服务功能。
服务功能和节点均可被视为逻辑实体。它们可以是分离的框体(分离的物理设备),它们可在同一框体(同一物理设备)上运行。此外,它们可以是物理的、虚拟的(被体现为在计算元件上运行的软件)、或物理和虚拟的任意组合。节点是“转发节点/处理”,因为它查看NSH并挑选正确的传输封装以用于网络转发。
图1示出服务链SF1->SF2->SF3->SF4,仅节点1和节点4使用NSH来用于引导。也就是说,仅节点1和节点4是“NSH感知”或“NSH使能”的。节点2和3不是NSH感知的,因此它们不能作用于任何NSH信息也不能添加/移除NSH报头。在该情况下,服务路径包含需要被应用于流经服务链的流量的四个服务功能,并且节点2和节点3依赖于诸如段路由、显式路径信息之类的传输。
使用NSH架构中所描述的技术,当服务链SF1->SF2->SF3->SF4被实例化在网络中时,控制平面分配将由NSH基础设施用于在服务平面层进行转发的服务路径标识符(PathID)和服务索引(SI)。在该情况下,由于服务链包括四个服务功能,则SI将被设置为5(反映服务链中的服务功能的数目加1)。
在NSH感知服务链中,在每次服务跳跃将SI减1。也就是说,在应用服务链中的每个服务功能之后。当SI达到值1时,从分组移除NSH并使用传输协议(例如,互联网协议(IP))转发技术来转发分组。这在图 1所示的示例服务链中引入问题,因为仅节点1和节点4具有该能力。这意味着SI被减去SF1(从5到4)。此时,由于节点2不理解NSH而节点1不能将流量发送到节点2,但SF2在链中是要求的。一个选项是将流量直接发送到SF2,并且在一些情况下,SF2可能能够“跳过”NSH而执行其本地服务策略,但它不能转发到节点3/SF3。然而,节点2/SF2使用显式“路径”传输(例如,段路由)来达到下一节点以便当流量到达节点4时SI仍被设置为4(如由SF1设置),并且这将导致服务路径由于IS不正确(它应具有被设置为2而非4的值)而发生故障,因为SF4是针对服务链被应用的最后一个服务。
为克服该问题并允许非NSH感知节点参与NSH使能服务链,引入‘透明NSH路径代理’的概念。在NSH架构内部,透明NSH路径代理被视为服务链内的单个服务跳跃。该功能允许负责服务链到网络中的实例化的控制平面来识别服务链的所选择的服务路径中涉及的节点是否能够处理 NSH报头。使用该技术,控制平面能够将服务链拆分成若干段并且在正确的网络元件处应用必要的策略/分类规则,以使得流量能够无阻碍地流经服务链。
现在参考图2。图2类似于图1,但示出了存在控制器50和两个逻辑分类器节点30(1)和30(2)。分类器节点30(1)和30(2)的功能可由如图1所示的专用网络节点来执行,或它们可被集成在诸如节点4之类的现有节点中。控制器50被连接到节点20(1)-20(4)中的每个节点以及分类器节点30(1)和30(2)。控制器50获取关于在其控制下的各个节点的能力的知识,特别是节点是否能够处理NSH。基于来自网络管理员的输入,控制器50建立针对由要在相应的一个或多个节点处执行的有序服务功能序列所定义的服务链的服务路径。
控制器50将每个服务段视为被绑定到较高层服务链的单独服务路径,如图2所示。为(一个或多个)非参与(即,非NSH感知)段分配预留的服务路径标识符(PathID)。例如,分配PathID(值0)以及为1 的SI(指示整个段是一个跳跃)。根据由控制器50提供给分类器节点30 (1)的控制平面信息,通过非NSW感知段前面的最后一个NSH感知节点将流量导入服务链PathID“值0”。
在第一服务功能SF1处,分组以{PathID“值1”,SI 2}到达。指向 SF1的该元组将对流量应用其功能并将流量返回到节点1。节点1设置元组 {PathID 0,SI 1}(由于它是非NSH感知段前面的最后一个NSH感知节点)并将流量发送到节点2,节点2将使用显式路径传输(例如,段路由) 来确定SF2应被应用(跳过NSH服务路径报头但将元数据传递到SF2)。 SF2将把流量返回到节点2,该流量将被转发到节点3。同样,节点3将使用显式路径传输来确定SF3应被应用。当流量从SF3返回时,使用与服务链的分类器节点30(1)相同的规则来在分类器节点30(2)发生重新分类事件,导致具有{PathID“值2”,SI 2}的NSH报头被推送到分组上并被转发到节点4。节点4现在可以正常使用NSH信息来处理分组,因为它是NSH感知网络节点。该分配确保NSH值与整体服务链环境相一致。
图2示出了控制器50将服务链10划分为若干段。第一段在分类器节点30(1)和节点1之间,并且该跳跃的PathID为PathID值1。第二段是从节点1到节点2、节点3以及到分类器节点30(2)。因此,非NSH感知节点组成单个服务段,并且被分配有预定预留服务路径标识符,例如, PathID值0。因此,即使在非NSH段中存在多个节点,但该段被视为单个服务跳跃。最终段是从分类节点30(2)到NSH感知节点4。
图3是示出了被执行以实现图2中所描绘的技术的方法200的操作的流程图。在本说明书中,“NSH感知”网络节点是能够对流量的分组进行解封装以提取NSH的节点,该NSH包括指导如何通过服务链来转发分组的服务链转发信息以及针对服务链转发信息的上下文服务路径信息。类似地,“非NSH感知”网络节点是不能对分组进行解封装以提取NSH的节点。在210处,与具有相关联的一个或多个服务功能的多个网络节点进行通信的控制器建立针对由要在多个网络节点中的一个或多个节点的相应节点处执行的有序服务功能序列所定义的服务链的服务路径,其中,服务路径的一个或多个节点是NSH感知节点并且服务链中的一个或多个节点是非NSH感知节点。控制器检测非NSH感知的一个或多个网络节点。控制器可通过直接配置(即,网络管理员所提供的先验知识)或通过任意适当的协议从网络节点学习来检测网络节点是否是NSH感知。网络节点可以是物理网络元件(交换机、路由器等)或虚拟网络元件(虚拟交换机、虚拟路由器等)。
在220处,控制器为服务链中仅包括一个或多个非NSH感知节点的段分配预定服务路径标识符和预定服务索引值,以便将一个或多个非NSH 感知节点指定为服务链中的单个服务跳跃段。针对服务链中包括一个或多个非NSH感知节点的每个段,预定服务路径标识符被设置为预定预留值。对于服务链中包括一个或多个非NSH感知节点的每个段,预定服务索引值可以是“1”。相反地,针对服务链中包括一个或多个NSH感知节点的每个段,服务索引值取决于段中网络节点的数目。
控制器为服务链的每个段分配单独的服务路径标识符和服务索引值。每个段可以包括或不包括能够对分组进行解封装以提取NSH的一个或多个网络节点。控制器将与服务链的段相关的相应的服务路径标识符和服务索引值发送到服务链中的每个网络节点。以这种方式,控制器将服务链拆分为包括至少一个只具有NSH感知节点的段以及至少一个只具有非NSH 感知节点的段的多个段。
现在参考图4。图4示出了被封装在传输报头(例如,IP报头)中的分组和NSH的示例。参考标号300处所示的分组包括分组有效负载310、传输报头(例如,IP或通用数据报协议(UDP)等)以及NSH 330。NSH 330包括基报头332、服务路径标识符(PathID)字段336以及服务索引字段338。NSH被设计为跨一系列物理和虚拟设备(包括硬件转发元件)是容易实现的。
基报头332包括包含一个或多个标志的字段。例如,基报头可以包括指示分组是否为操作及管理(OAM)分组的标志。
服务路径字段336标识具体服务路径,并因此包含上述PathID。参与节点使用该标识符用于路径选择。服务索引字段338包含上述SI,并指示该PathID的服务路径中有多少服务功能。
诸如服务分类器、服务节点以及服务平面中的转发元件之类的NSH 感知节点具有若干可能的NSH相关动作。
***/移除服务报头:这些动作可以分别在服务路径的开始和结束发生或可以由确定服务路径由于本地策略而必须改变的服务功能来执行。数据被分类,并且若确定要求服务,则强加服务报头。服务功能可以根据要求重新分类数据。服务分类器***NSH。作为服务链的结束,对服务报头进行操作的最后一个节点将其移除。
基于报头字段转发:NSH提供服务链信息并且由参与节点用于确定正确的服务路径选择和转发以及环路检测。参与节点使用NSH来选择服务路径中的下一服务。
更新服务报头:基服务报头中的字段由服务功能来更新。可以根据需要更新上下文报头,例如,若发生更多粒度分类。若非服务元件用作数据平面代理(代表服务来添加和移除NSH),则该节点更新基报头。
服务策略选择:服务实例从服务报头导出策略选择。服务报头中共享的上下文可以提供一系列的服务相关信息,例如,流量分类。服务功能使用NSH来选择本地服务策略。
一旦元数据被添加到分组,则使用外封装来将原始分组及相关联的元数据转发到服务链的开始。封装服务以下两个目的:
1.创建拓扑独立的服务平面。在不改变底层网络拓扑的情况下将分组转发到所要求的服务。
2.非参与网络节点仅转发被封装的分组。
NSH与所使用的封装无关,以及NSH可以使用现在已知的或今后开发的任意传输方案来封装。经由外封装中的协议类型来指示NSH的存在。
NSH还可包括一个或多个上下文报头,包括网络平台上下文报头 340、以及网络共享上下文报头342。网络平台上下文提供在网络节点之间共享的特定于平台的信息。网络共享上下文报头是提供与任意网络节点有关的元数据的网络共享上下文,例如,边缘分类的结果。
上下文报头中所传递的元数据特定于所运载的转发状态,并且在该意义上,不同的转发路径可以运载不同的元数据。控制器负责管理服务链并将服务链推送到用作分类器的网络节点。服务链和用于实现服务链的转发路径确定服务转发路径或服务路径。因此,服务路径变成所有网络节点在确定服务链的下一跳跃时必须从上下文层叠中提取的转发状态。网络节点不仅可以利用该转发状态来确定服务链的下一跳跃,而且还可根据具体的上下文报头的元数据来对流量执行额外的转换以便支持各种服务实例,即,以便支持特定的服务功能。作为示例,网络节点可以利用服务所理解的完全不同的传输来替换传入传输,同时保留上下文层叠。上下文报头还使得网络节点能够用作另一网络节点的服务功能的代理,并执行元数据到服务所理解的原始接口的映射。因此,当网络节点接收到服务报头时,解析服务报头以检索一个或多个层叠上下文报头,网络节点从服务报头解译转发状态和服务路径的另一跳跃网络节点,并从上下文报头集合确定服务动作或相关联的元数据。
图5示出了被配置为执行本文针对网络节点所描述的操作的网络/服务节点(例如,交换机、路由器、网关等)的示例框图。应理解的是,虚拟网络节点将是图5所示各项的软件模拟或虚拟化版本。网络节点在参考标号20(i)处被示出并且包括多个端口410(1)-410(m)、网络专用集成电路(ASIC)415、处理器或中央处理单元(CPU)420以及存储器430。端口410(1)-410(m)从网络节点接收入口分组和输出出口分组。网络节点ASIC 420根据逻辑以及来自处理器420的控制来将传人分组引导至出口端口。例如,若网络节点是路由器,则ASIC 415是被配置用于网络路由功能的路由器ASIC,以及若网络节点是交换机,则ASIC415是被配置用于网络交换功能的交换机ASIC。处理器420例如是微处理器或微控制器,并执行存储器430中所存储的服务报头处理固件/软件440的指令。服务报头处理固件/软件440包括指令,当由处理器420执行时,使得处理器执行本文针对网络节点/服务节点所描述的操作。
与网络节点20(i)相关联的服务功能的操作由在与网络节点的端口 (例如,端口410(m))进行通信的处理器核心或服务器刀片460上运行的服务功能软件450来实现。
存储器430可包括只读存储器(ROM)、随机存取存储器 (RAM)、磁盘存储介质设备、光存储介质设备、闪速存储器设备、电、光、或其它物理/有形存储器存储设备。通常,存储器430可包括编码有包括计算机可执行指令的软件的一个或多个有形(非暂态)计算机可读存储介质(例如,存储器设备),并且当软件被执行(由处理器420)时可操作来执行本文描述的操作。
现在转到图6,示出了被配置为执行本文描述的操作的控制器50的示例框图。应理解的是,虚拟控制器将是图7中所示各项的软件模拟或虚拟化版本。控制器50包括一个或多个处理器510、存储器520、总线530以及网络接口单元540。处理器510可以是微处理器或微控制器。网络接口单元540辅助控制器50和网络节点之间的网络通信。处理器510执行与存储器520中所存储的软件相关联的指令。具体的,处理器510存储服务路径和服务报头生成软件550,该软件当由处理器510执行时,使得处理器 510执行本文关于图1-3所描述的控制器的操作。
存储器520可包括ROM、RAM、磁盘存储介质设备、光存储介质设备、光存储介质设备、闪速存储器设备、电、光、或其它物理/有形存储器存储设备。通常,存储器520可包括编码有包括计算机可执行指令的软件的一个或多个有形(非暂态)计算机可读存储介质(例如,存储器设备),并且当软件被执行(由处理器510)时可操作来执行本文描述的操作。
总之,提出了提供将非NSH感知节点集成到NSH感知服务链中的能力并且使用NSH架构的元数据能力的技术。这允许服务链的快速部署,特别是在存在想要立即利用NSH的元数据能力并随时间移动以支持完整 NSH实现方式的服务功能的情况下。这样做,这些技术支持NSH感知和 NSH未感知服务节点的混合环境。概述了针对NSH使用不同的传输以使得传输可以参与服务拓扑并寻址服务路径,但针对元数据利用NSH。
因此,以一种形式,提供了一种方法,包括:在与具有相关联的一个或多个服务功能的多个网络节点进行通信的控制器处,建立针对由要在多个网络节点中的一个或多个网络节点的相应网络节点处执行的有序服务功能序列所定义的服务链的服务路径,其中,服务路径的一个或多个网络节点能够对流量的分组进行解封装以提取网络服务报头,该网络服务报头包括指导如何通过服务链来转发分组的服务链转发信息以及针对服务链转发信息的上下文服务路径信息,并且服务路径的一个或多个网络节点不能对分组进行解封装以提取网络服务报头;以及在控制器处,为服务链中仅包括不能对分组进行解封装以提取网络服务报头的一个或多个网络节点的段分配预定服务路径标识符和预定服务索引值,以便将被确定不能对分组进行解封装以提取网络服务报头的一个或多个网络节点指定为服务链中的单个服务跳跃段。
以另一形式,提供了一种装置,包括:网络接口单元,该网络接口单元通过网络发送和接收网络通信;以及处理器,该处理器与网络接口单元相耦合:建立针对由要在多个网络节点中的一个或多个网络节点的相应网络节点处执行的有序服务功能序列所定义的服务链的服务路径,其中,服务路径的一个或多个网络节点能够对流量的分组进行解封装以提取网络服务报头,该网络服务报头包括指导如何通过服务链来转发分组的服务链转发信息以及针对服务链转发信息的上下文服务路径信息,并且服务路径的一个或多个网络节点不能对分组进行解封装以提取网络服务报头;以及为服务链中仅包括不能对分组进行解封装以提取网络服务报头的一个或多个网络节点的段分配预定服务路径标识符和预定服务索引值,以便将被确定不能对分组进行解封装以提取网络服务报头的一个或多个网络节点指定为服务链中的单个服务跳跃段。
以又一形式,提供了编码有指令的一个或多个非暂态计算机可读存储介质,指令当由处理器执行时,使得处理器执行操作,包括:在与具有相关联的一个或多个服务功能的多个网络节点进行通信的控制器处,建立针对由要在多个网络节点中的一个或多个网络节点的相应网络节点处执行的有序服务功能序列所定义的服务链的服务路径,其中,服务路径的一个或多个网络节点能够对流量的分组进行解封装以提取网络服务报头,该网络服务报头包括指导如何通过服务链来转发分组的服务链转发信息以及针对服务链转发信息的上下文服务路径信息,并且服务路径的一个或多个网络节点不能对分组进行解封装以提取网络服务报头;以及在控制器处,为服务链中仅包括不能对分组进行解封装以提取网络服务报头的一个或多个网络节点的段分配预定服务路径标识符和预定服务索引值,以便将被确定不能对分组进行解封装以提取网络服务报头的一个或多个网络节点指定为服务链中的单个服务跳跃段。
上述是示例。在不脱离其精神或本质特征的情况下,本文描述的概念可被体现在其他特定形式中。上述示例因此在所有方面将被视为说明性的并且不意味着是限制性的。因此,旨在包括落入要求本申请优先权的申请中任意权利要求按照被公平、合法以及公正地授予的宽度来解释的精神和范围内的所有这类更改、修改以及变化。
Claims (27)
1.一种用于建立服务链的方法,包括:
在与具有相关联的一个或多个服务功能的多个网络节点进行通信的控制器处,建立针对由要在多个网络节点中的一个或多个网络节点的相应网络节点处执行的有序服务功能序列所定义的服务链的服务路径,其中,所述服务路径的一个或多个网络节点能够对流量的分组进行解封装以提取网络服务报头,所述网络服务报头包括指导如何通过所述服务链来转发分组的服务链转发信息以及针对所述服务链转发信息的上下文服务路径信息,并且所述服务路径的一个或多个网络节点不能对分组进行解封装以提取所述网络服务报头;以及
在所述控制器处,为所述服务链中仅包括不能对分组迸行解封装以提取所述网络服务报头的一个或多个网络节点的段分配预定服务路径标识符和预定服务索引值,以便将被确定不能对分组进行解封装以提取所述网络服务报头的所述一个或多个网络节点指定为包括在所述服务链中的单个服务跳跃段中。
2.如权利要求1所述的方法,其中,分配包括:将单独的服务路径标识符和服务索引值分配给所述服务链的每个段。
3.如权利要求2所述的方法,其中,每个段可以包括或不包括能够对分组进行解封装以提取所述网络服务报头的一个或多个网络节点。
4.如权利要求2所述的方法,还包括将与所述服务链的相应的段相关的服务路径标识符和服务索引值从所述控制器发送到所述服务链中的每个网络节点。
5.如权利要求2所述的方法,其中,针对所述服务链中包括能够对分组进行解封装以提取所述网络服务报头信息的一个或多个网络节点的每个段,所述服务路径标识符被设置为所述控制器所分配的值。
6.如权利要求2所述的方法,其中,针对所述服务链中包括不能对分组进行解封装以提取所述网络服务报头的一个或多个网络节点的每个段,所述预定服务路径标识符被设置为预定预留值。
7.如权利要求6所述的方法,其中,针对所述服务链中包括不能对分组进行解封装以提取所述网络服务报头的一个或多个节点的每个段,所述预定服务索引值为l。
8.如权利要求2所述的方法,其中,针对所述服务链中包括能够对分组进行解封装以提取所述网络服务报头的一个或多个网络节点的每个段,所述服务索引值取决于所述段中的网络节点的数目。
9.如权利要求1所述的方法,还包括在所述控制器处检测不能对分组进行解封装以提取所述网络服务报头的所述一个或多个网络节点。
10.如权利要求l所述的方法,还包括将所述服务链拆分成多个段,所述多个段包括至少一个只具有能够对分组进行解封装以提取所述网络服务报头的网络节点的段,以及至少一个只具有不能对分组进行解封装以提取所述网络服务报头的网络节点的段。
11.如权利要求l所述的方法,所述多个网络节点是物理的网络元件或虚拟的网络元件。
12.一种用于建立服务链的装置,包括:
网络接口单元,所述网络接口单元通过网络发送和接收网络通信;以及
处理器,所述处理器稠合于所述网络接口单元,执行以下操作:
建立针对由要在多个网络节点中的一个或多个网络节点的相应网络节点处执行的有序服务功能序列所定义的服务链的服务路径,其中,所述服务路径的一个或多个网络节点能够对流量的分组进行解封装以提取网络服务报头,所述网络服务报头包括指导如何通过所述服务链来转发分组的服务链转发信息以及针对所述服务链转发信息的上下文服务路径信息,并且所述服务路径的一个或多个网络节点不能对分组进行解封装以提取所述网络服务报头;以及
为所述服务链中仅包括不能对分组进行解封装以提取所述网络服务报头的一个或多个网络节点的段分配预定服务路径标识符和预定服务索引值,以便将被确定不能对分组进行解封装以提取所述网络服务报头的所述一个或多个网络节点指定为包括在所述服务链中的单个服务跳跃段中。
13.如权利要求12所述的装置,其中,所述处理器将单独的服务路径标识符和服务索引值分配给所述服务链的每个段。
14.如权利要求13所述的装置,其中,每个段可以包括或不包括能够对分组进行解封装以提取所述网络服务报头的一个或多个网络节点。
15.如权利要求13所述的装置,其中,所述处理器使得与所述服务链的段相关的相应服务路径标识符和服务索引值被发送到所述服务链中的每个网络节点。
16.如权利要求13所述的装置,其中,处理器针对所述服务链中包括能够对分组进行解封装以提取所述网络服务报头信息的一个或多个网络节点的每个段,将所述服务路径标识符设置为一定值。
17.如权利要求13所述的装置,其中,针对所述服务链中包括不能对分组进行解封装以提取所述网络服务报头的一个或多个网络节点的每个段,所述预定服务路径标识符被设置为预定预留值。
18.如权利要求17所述的装置,其中,针对所述服务链中包括不能对分组进行解封装以提取所述网络服务报头的一个或多个节点的每个段,所述预定服务索引值为l。
19.如权利要求13所述的装置,其中,针对所述服务链中包括能够对分组进行解封装以提取所述网络服务报头的一个或多个网络节点的每个段,所述服务索引值取决于所述段中的网络节点的数目。
20.如权利要求12所述的装置,其中,所述处理器检测不能对分组进行解封装以提取所述网络服务报头的所述一个或多个网络节点。
21.一种计算机可读存储介质,存储计算机指令,当所述计算机指令由处理器执行时,使得所述处理器执行操作,包括:
在与具有相关联的一个或多个服务功能的多个网络节点进行通信的控制器处,建立针对由要在多个网络节点中的一个或多个网络节点的相应网络节点处执行的有序服务功能序列所定义的服务链的服务路径,其中,所述服务路径的一个或多个网络节点能够对流量的分组进行解封装以提取网络服务报头,所述网络服务报头包括指导如何通过所述服务链来转发分组的服务链转发信息、以及针对所述服务链转发信息的上下文服务路径信息,并且所述服务路径的一个或多个网络节点不能对分组进行解封装以提取所述网络服务报头;以及
在所述控制器处,为所述服务链中仅包括不能对分组进行解封装以提取所述网络服务报头的一个或多个网络节点的段分配预定服务路径标识符和预定服务索引值,以便将被确定不能对分组进行解封装以提取所述网络服务报头的所述一个或多个网络节点指定为包括在所述服务链中的单个服务跳跃段中。
22.如权利要求21所述的计算机可读存储介质,其中,可操作为使得所述处理器执行所述分配的操作的指令包括:可操作来将单独的服务路径标识符和服务索引值分配给所述服务链的每个段的指令。
23.如权利要求22所述的计算机可读存储介质,还包括使得所述处理器将与所述服务链的相应的段相关的服务路径标识符和服务索引值发送到所述服务链中的每个网络节点的指令。
24.如权利要求22所述的计算机可读存储介质,其中,针对所述服务链中包括不能对分组进行解封装以提取所述网络服务报头的一个或多个网络节点的每个段,所述预定服务路径标识符被设置为预定预留值。
25.如权利要求24所述的计算机可读存储介质,其中,针对所述服务链中包括不能对分组进行解封装以提取所述网络服务报头的一个或多个节点的每个段,所述预定服务索引值为1。
26.如权利要求22所述的计算机可读存储介质,其中,针对所述服务链中包括能够对分组进行解封装以提取所述网络服务报头的一个或多个网络节点的每个段,所述服务索引值取决于所述段中的网络节点的数目。
27.如权利要求21所述的计算机可读存储介质,还包括可操作来使得所述处理器检测不能对分组进行解封装以提取所述网络服务报头的所述一个或多个网络节点的指令。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/522,974 US9548919B2 (en) | 2014-10-24 | 2014-10-24 | Transparent network service header path proxies |
US14/522,974 | 2014-10-24 | ||
PCT/US2015/056816 WO2016065097A1 (en) | 2014-10-24 | 2015-10-22 | Transparent network service header path proxies |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107078950A CN107078950A (zh) | 2017-08-18 |
CN107078950B true CN107078950B (zh) | 2020-06-12 |
Family
ID=54477295
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201580057574.5A Active CN107078950B (zh) | 2014-10-24 | 2015-10-22 | 用于建立服务链的方法、装置和计算机可读存储介质 |
Country Status (4)
Country | Link |
---|---|
US (1) | US9548919B2 (zh) |
EP (1) | EP3210345B1 (zh) |
CN (1) | CN107078950B (zh) |
WO (1) | WO2016065097A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11811654B2 (en) | 2019-09-10 | 2023-11-07 | Huawei Technologies Co., Ltd. | Packet processing method and apparatus |
Families Citing this family (52)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10494675B2 (en) | 2013-03-09 | 2019-12-03 | Cell Mdx, Llc | Methods of detecting cancer |
EP2965086A4 (en) | 2013-03-09 | 2017-02-08 | Harry Stylli | Methods of detecting prostate cancer |
US9225638B2 (en) | 2013-05-09 | 2015-12-29 | Vmware, Inc. | Method and system for service switching using service tags |
JP6457064B2 (ja) * | 2014-07-23 | 2019-01-23 | 華為技術有限公司Huawei Technologies Co.,Ltd. | サービスパケット転送方法及び装置 |
WO2016040843A1 (en) | 2014-09-11 | 2016-03-17 | Harry Stylli | Methods of detecting prostate cancer |
US9774537B2 (en) | 2014-09-30 | 2017-09-26 | Nicira, Inc. | Dynamically adjusting load balancing |
US9825810B2 (en) | 2014-09-30 | 2017-11-21 | Nicira, Inc. | Method and apparatus for distributing load among a plurality of service nodes |
US11496606B2 (en) | 2014-09-30 | 2022-11-08 | Nicira, Inc. | Sticky service sessions in a datacenter |
US20160119253A1 (en) * | 2014-10-23 | 2016-04-28 | Kt Corporation | Method and system of performing service function chaining |
US9462084B2 (en) * | 2014-12-23 | 2016-10-04 | Intel Corporation | Parallel processing of service functions in service function chains |
US10594743B2 (en) | 2015-04-03 | 2020-03-17 | Nicira, Inc. | Method, apparatus, and system for implementing a content switch |
US9973401B2 (en) * | 2015-09-30 | 2018-05-15 | Intel Corporation | Service function path performance monitoring |
US10547692B2 (en) * | 2016-02-09 | 2020-01-28 | Cisco Technology, Inc. | Adding cloud service provider, cloud service, and cloud tenant awareness to network service chains |
US10165092B2 (en) * | 2016-05-11 | 2018-12-25 | Cisco Technology, Inc. | Using a network service header to manage a network-as-a-system |
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 . |
US10382596B2 (en) | 2016-06-23 | 2019-08-13 | Cisco Technology, Inc. | Transmitting network overlay information in a service function chain |
CN107925613B (zh) | 2016-07-01 | 2020-07-07 | 华为技术有限公司 | 业务功能链sfc中用于转发报文的方法、装置和*** |
US10225161B2 (en) * | 2016-10-31 | 2019-03-05 | Accedian Networks Inc. | Precise statistics computation for communication networks |
US10333829B2 (en) * | 2016-11-30 | 2019-06-25 | Futurewei Technologies, Inc. | Service function chaining and overlay transport loop prevention |
US10462047B2 (en) | 2017-04-10 | 2019-10-29 | Cisco Technology, Inc. | Service-function chaining using extended service-function chain proxy for service-function offload |
US10797966B2 (en) | 2017-10-29 | 2020-10-06 | Nicira, Inc. | Service operation chaining |
US10582027B2 (en) * | 2017-11-04 | 2020-03-03 | Cisco Technology, Inc. | In-band metadata export and removal at intermediate nodes |
US11012420B2 (en) | 2017-11-15 | 2021-05-18 | Nicira, Inc. | Third-party service chaining using packet encapsulation in a flow-based forwarding element |
CN109962847B (zh) * | 2017-12-14 | 2021-07-30 | 中国电信股份有限公司 | 业务功能链报文的封装方法和装置及计算机可读存储介质 |
US10797910B2 (en) | 2018-01-26 | 2020-10-06 | Nicira, Inc. | Specifying and utilizing paths through a network |
CN111164939B (zh) * | 2018-01-26 | 2022-08-23 | Nicira股份有限公司 | 通过网络指定和利用路径 |
US10805192B2 (en) | 2018-03-27 | 2020-10-13 | Nicira, Inc. | Detecting failure of layer 2 service using broadcast messages |
US10153978B1 (en) * | 2018-05-04 | 2018-12-11 | Nefeli Networks, Inc. | Distributed anticipatory bidirectional packet steering for software network functions |
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 |
US10812374B2 (en) * | 2018-09-21 | 2020-10-20 | Cisco Technology, Inc. | Segment routing with fast reroute for container networking |
JP7195432B2 (ja) * | 2018-11-23 | 2022-12-23 | ホアウェイ・テクノロジーズ・カンパニー・リミテッド | サービス機能チェイニングネットワークサービス |
US11627080B2 (en) * | 2019-01-18 | 2023-04-11 | Vmware, Inc. | Service insertion in public cloud environments |
US10892989B2 (en) | 2019-01-18 | 2021-01-12 | Vmware, Inc. | Tunnel-based service insertion in public cloud environments |
US11360796B2 (en) | 2019-02-22 | 2022-06-14 | Vmware, Inc. | Distributed forwarding for performing service chain operations |
US10887222B2 (en) * | 2019-04-11 | 2021-01-05 | Vmware, Inc. | Service path identifier allocation in service insertion |
CN110022234B (zh) * | 2019-04-16 | 2022-02-22 | 中国人民解放军国防科技大学 | 面向边缘计算的非结构化数据共享机制实现方法 |
US11032162B2 (en) | 2019-07-18 | 2021-06-08 | Vmware, Inc. | Mothod, non-transitory computer-readable storage medium, and computer system for endpoint to perform east-west service insertion in public cloud environments |
US11411843B2 (en) * | 2019-08-14 | 2022-08-09 | Verizon Patent And Licensing Inc. | Method and system for packet inspection in virtual network service chains |
US11283717B2 (en) | 2019-10-30 | 2022-03-22 | Vmware, Inc. | Distributed fault tolerant service chain |
US11140218B2 (en) * | 2019-10-30 | 2021-10-05 | Vmware, Inc. | Distributed service chain across multiple clouds |
CN111181856B (zh) * | 2019-12-31 | 2022-07-19 | 江苏省未来网络创新研究院 | 基于段路由实现虚拟路由器服务链***及其方法 |
US11223494B2 (en) | 2020-01-13 | 2022-01-11 | Vmware, Inc. | Service insertion for multicast traffic at boundary |
US11153406B2 (en) | 2020-01-20 | 2021-10-19 | Vmware, Inc. | Method of network performance visualization of service function chains |
US11659061B2 (en) | 2020-01-20 | 2023-05-23 | Vmware, Inc. | Method of adjusting service function chains to improve network performance |
US11329897B2 (en) | 2020-03-19 | 2022-05-10 | Juniper Networks, Inc. | SLA packet steering in network service function chaining |
US11438257B2 (en) * | 2020-04-06 | 2022-09-06 | Vmware, Inc. | Generating forward and reverse direction connection-tracking records for service paths at a network edge |
CN111884863B (zh) * | 2020-08-04 | 2023-11-07 | 浪潮云信息技术股份公司 | 一种用于云计算环境的vpc服务链实现方法及*** |
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 |
US20230269275A1 (en) * | 2022-02-23 | 2023-08-24 | Cisco Technology, Inc. | Implementing policy based on unique addresses or ports |
CN116962507A (zh) * | 2022-04-13 | 2023-10-27 | 中国电信股份有限公司 | 信息采集方法、服务链代理节点、服务链和存储介质 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102656844A (zh) * | 2009-12-21 | 2012-09-05 | 瑞典爱立信有限公司 | 路由器中的跟踪支持 |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7657940B2 (en) | 2004-10-28 | 2010-02-02 | Cisco Technology, Inc. | System for SSL re-encryption after load balance |
US20060095960A1 (en) | 2004-10-28 | 2006-05-04 | Cisco Technology, Inc. | Data center topology with transparent layer 4 and layer 7 services |
US7610375B2 (en) | 2004-10-28 | 2009-10-27 | Cisco Technology, Inc. | Intrusion detection in a data center environment |
US7571470B2 (en) | 2004-10-28 | 2009-08-04 | Cisco Technology, Inc. | One arm data center topology with layer 4 and layer 7 services |
US7558261B2 (en) | 2004-10-28 | 2009-07-07 | Cisco Technology, Inc. | Architecture and method for accessing services in a data center |
US20060092950A1 (en) | 2004-10-28 | 2006-05-04 | Cisco Technology, Inc. | Architecture and method having redundancy in active/active stateful devices based on symmetric global load balancing protocol (sGLBP) |
US7643468B1 (en) | 2004-10-28 | 2010-01-05 | Cisco Technology, Inc. | Data-center network architecture |
US8311045B2 (en) | 2006-04-07 | 2012-11-13 | Cisco Technology, Inc. | System and method for selectively applying a service to a network packet using a preexisting packet header |
US9253274B2 (en) | 2007-01-19 | 2016-02-02 | Cisco Technology, Inc. | Service insertion architecture |
US8442043B2 (en) | 2008-12-29 | 2013-05-14 | Cisco Technology, Inc. | Service selection mechanism in service insertion architecture data plane |
US8743885B2 (en) * | 2011-05-03 | 2014-06-03 | Cisco Technology, Inc. | Mobile service routing in a network environment |
US8830834B2 (en) * | 2011-12-21 | 2014-09-09 | Cisco Technology, Inc. | Overlay-based packet steering |
US8989192B2 (en) * | 2012-08-15 | 2015-03-24 | Futurewei Technologies, Inc. | Method and system for creating software defined ordered service patterns in a communications network |
US9407540B2 (en) * | 2013-09-06 | 2016-08-02 | Cisco Technology, Inc. | Distributed service chaining in a network environment |
US9794379B2 (en) * | 2013-04-26 | 2017-10-17 | Cisco Technology, Inc. | High-efficiency service chaining with agentless service nodes |
US9300585B2 (en) * | 2013-11-15 | 2016-03-29 | Cisco Technology, Inc. | Shortening of service paths in service chains in a communications network |
US9825856B2 (en) * | 2014-01-06 | 2017-11-21 | Futurewei Technologies, Inc. | Service function chaining in a packet network |
-
2014
- 2014-10-24 US US14/522,974 patent/US9548919B2/en active Active
-
2015
- 2015-10-22 CN CN201580057574.5A patent/CN107078950B/zh active Active
- 2015-10-22 EP EP15791133.0A patent/EP3210345B1/en active Active
- 2015-10-22 WO PCT/US2015/056816 patent/WO2016065097A1/en active Application Filing
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102656844A (zh) * | 2009-12-21 | 2012-09-05 | 瑞典爱立信有限公司 | 路由器中的跟踪支持 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11811654B2 (en) | 2019-09-10 | 2023-11-07 | Huawei Technologies Co., Ltd. | Packet processing method and apparatus |
Also Published As
Publication number | Publication date |
---|---|
WO2016065097A1 (en) | 2016-04-28 |
CN107078950A (zh) | 2017-08-18 |
US20160119226A1 (en) | 2016-04-28 |
EP3210345A1 (en) | 2017-08-30 |
EP3210345B1 (en) | 2019-02-20 |
US9548919B2 (en) | 2017-01-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107078950B (zh) | 用于建立服务链的方法、装置和计算机可读存储介质 | |
EP3824602B1 (en) | Multi-cloud connectivity using srv6 and bgp | |
US9860340B2 (en) | Service function chaining branching | |
CN107005472B (zh) | 一种用于提供域间服务功能链接的方法及装置 | |
EP3058687B1 (en) | Configurable service proxy mapping | |
US9438512B2 (en) | Stacking metadata contexts for service chains | |
US20170214627A1 (en) | Distributed Load Balancing for Network Service Function Chaining | |
CN113273142B (zh) | 通信***和通信方法 | |
US9537752B2 (en) | Encoding inter-domain shared service paths | |
US9755959B2 (en) | Dynamic service path creation | |
CN113261240A (zh) | 使用可编程客户机进行多租户隔离 | |
CN113261242B (zh) | 通信***和由通信***实现的方法 | |
US20160301603A1 (en) | Integrated routing method based on software-defined network and system thereof | |
US9930008B2 (en) | Dynamic service chain with network address translation detection | |
EP3223476B1 (en) | Method, system, and apparatus for preventing tromboning in inter-subnet traffic within data center architectures | |
US10305700B2 (en) | Systems and methods for designating packets for customized data processing in port-extended architectures | |
CN113302898A (zh) | 将客户机-设备对等互联的虚拟路由控制器 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |