CN105247822B - 一种用于建立网络服务链的方法、装置及计算机可读存储介质 - Google Patents

一种用于建立网络服务链的方法、装置及计算机可读存储介质 Download PDF

Info

Publication number
CN105247822B
CN105247822B CN201480029433.8A CN201480029433A CN105247822B CN 105247822 B CN105247822 B CN 105247822B CN 201480029433 A CN201480029433 A CN 201480029433A CN 105247822 B CN105247822 B CN 105247822B
Authority
CN
China
Prior art keywords
service area
service
network
router
route
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.)
Expired - Fee Related
Application number
CN201480029433.8A
Other languages
English (en)
Other versions
CN105247822A (zh
Inventor
亨德里克斯·G·P·博施
詹姆斯·古伊查德
戴夫·巴拉弛
亚历山德罗·杜米努科
路源·方
保罗·昆恩
雷克斯·非尔纳多
大卫·沃德
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Cisco Technology Inc
Original Assignee
Cisco Technology Inc
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 Cisco Technology Inc filed Critical Cisco Technology Inc
Publication of CN105247822A publication Critical patent/CN105247822A/zh
Application granted granted Critical
Publication of CN105247822B publication Critical patent/CN105247822B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • H04L45/04Interdomain routing, e.g. hierarchical routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/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

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

本文提出了用于在网络环境中使用的技术,该网络环境包括一个或多个服务区,每一个服务区包括将被应用于网络流量的线内应用服务的至少一个实例和将网络流量导向至至少一个服务的一个或多个路由器,和路由目标,该路由目标被分配给唯一的服务区以用作在其他服务区、目的网络或源网络的路由器之间通过控制协议的路由进行导入和导出的团体值。每一个服务区或目的网络中的边缘路由器通过标记有它的路由目标目的网络前缀来通告路由。服务链以在服务区或源网络的边缘路由器处的路由目标的方式通过导入和导出目的网络前缀来创建。

Description

一种用于建立网络服务链的方法、装置及计算机可读存储 介质
技术领域
本公开涉及网络,例如针对服务提供者的网络。
背景技术
网络运营商越来越多地用服务来货币化它们的基础设施。服务范围不仅包括移动线路终端、合法监听、计费,而且包括应用专用的(在线)服务,例如超文本传输协议(HTTP)代理、传输控制协议(TCP)优化器、防火墙、和网络地址转换(NAT)功能。
在网络运营商使用的服务路由的基础设施中,服务的链可以改变发起节点与远程之间的流量(可能是因特网托管的服务)。去往和来自发起节点的所有分组都受到这些服务中的一个或多个服务。
附图说明
图1是示出了包括一个或多个网络的网络环境的框图,其中每一个网络包括用于服务的应用的网络流量可以被定向到的服务的至少一个实例。
图2是包括两个服务区的示例网络环境的框图,并且示出了用于通过在服务区的边界处的导入/导出规则来创建服务链的技术。
图3A和3B是描述被执行用来创建例如图2中所显示的网络环境的服务链的操作的流程图。
图4是示出了创建服务链的另外示例的网络环境的示意图。
图5是示出了在服务区内执行的会话路由和转发管理多个服务实例之间的流量转发的框图。
图6是描述被执行用于会话路由和转发功能的操作的流程图。
图7是示出了会话路由和转发功能的操作的示例的框图。
图8是示出了根据本文所提出的技术向服务区边缘路由器提供会话状态信息的中央控制器的框图。
图9是被配置为执行本文所提出的技术的路由器的示例框图。
具体实施方式
概述
本文提出了在网络环境中使用的技术,该网络环境包括:一个或多个服务区,每一个服务区包括将被应用于网络流量的线内(in-line)应用服务的至少一个实例和将网络流量导向到至少一个服务的一个或多个路由器;和路由目标,该路由目标被分配给唯一的服务区以用作团体值,用于在其他服务区、目的网络或源网络的路由器之间通过控制协议来路由导入和导出。每一个服务区或目的网络中的边缘路由器通过标记有它的路由目标的目的网络前缀来通告路由。通过在服务区或源网络的边缘路由器处路由目标的方式导入和导出目的网络前缀来创建服务链。
示例实施例
图1示出了通常在参考编号10处示出的服务网络基础设施的示例。图1示出了能够使用RFC 4364路由目标导入/导出技术的服务路由外联网。在这种示例中,存在源网络20、目的网络30、在源网络20边缘的路由器40、和在目的网络30边缘的路由器50。路由器40被连接至线内应用服务60,例如线内应用服务60可以是虚拟的或物理的防火墙,或将被应用于网络流量的任意有用的服务,其进一步的示例将在下面进行描述。路由器40和服务60被认为是服务区。
外联网通过目的网络在本地重新发起路由而有助于通过服务来转发流量。RFC4364提供方法,通过该方法,服务提供者可以使用因特网协议 (IP)或多协议标签交换(MPLS)主干来向它的客户提供IP虚拟专用网 (VPN)。RFC 4364定义了使用外联网来在客户站之间建立层3(L3) VPN的方式。路由是分布式的并且标记有路由目标(RT)。在外联网的这种实施例中,路由目标被分配给唯一的服务区以用作团体值,用于在路由器之间通过控制协议路由导入和导出。当通过源网络20导入时,“边界”路由器40重新发起本身作为下一跳的上游目的网络的通告的目的网络IP前缀。路由器40也被表示为路由器Y,并且路由器50也被表示为路由器X。通过路由器40路由至目的网络30流量被强迫通过服务60。
在图1的示例中,目的网络30是在IP地址10.1/16上的外联网的一部分。如在参考编号70处所示的,路由器50(路由器X)通过诸如边界网关协议(BGP)之类的控制协议通告其正在服务10.1/16,10.1/16具有下一跳“X”并且与路由目标RT(X)相关联。路由器40(路由器Y)被配置为导入所有标记有RT(X)的路由,并且在这样做时得知存在至具有特定下一跳NH(X)和相关联的MPLS标签(未示出)的目的网络10.1/16 的路由。路由器40(路由器Y)基于如在参考编号72处显示的路由目标 RT(X)来导入10.1/16。因此,路由器40(路由器Y)现在可以通过路由器50(路由器X)与目的网络30进行通信。IPv6网络遵循类似的操作。
路由器40(路由器Y)还被配置为维持朝向服务60的附着电路(如在RFC 4364中定义的)。附着电路是物理局域网连接、虚拟局域网、或从路由器40(路由器Y)到提供服务60的设备的其他连接。同样,服务 60可以在物理或虚拟设备中被具体化(或被具体化为物理或虚拟设备)。因此,附着电路可以是穿过管理程序内核的VLAN、通过超级管理器内核的隧道等等。路由器40(路由器Y)确保所有去往10.1/16的流量都被强迫通过服务60。
如果路由器40(路由器Y)知道如何将流量转发至在10.1/16处的目的网络,则需要通知源网络20它具有到目的网络30的路由。为此,路由器40(路由器Y)在源网络20中重新发起具有本身作为下一跳的 10.1/16,以便源网络20中的元素知道它正在服务10.1/16,如在参考编号 74处所示。
当路由器40(路由器Y)强迫流量通过服务60时,这有效地变为长度为“1”的服务链。从源网络20去往目的网络30的所有流量都被路由器40(路由器Y)强迫通过服务60。因此,当从路由器50(X)接收到与网络10.1/16相关联的MPLS标签时,会告诉路由器40(路由器Y)将流量向下推向服务60,而不是直接推向路由器50(路由器X)。服务60 将应用一个或多个规则或其他处理,将(由服务后处理的)分组发送回路由器40(路由器Y),并且路由器40(路由器Y)将会把该流量通过与路由器50(X)相关联的MPLS标签的方式转发至路由器50。因此,想要将流量发送至目的网络30的源网络20中的所有网络元素将会把该流量发送至路由器40(路由器Y)。执行这些操作的智能可以在路由器(例如路由器40(路由器Y))中被适当配置的硬件和/或软件中被具体化。再次,路由器40(路由器Y)和50(路由器X)可以是物理网络设备或虚拟网络设备(例如,在物理服务器中的超级管理器上运行的虚拟机软件)。在后一种情况下,这种能力通过在虚拟网络设备的虚拟机或其他软件过程上运行的适当配置的软件来实施。
服务提供者通过“即时(on-the-fly)”和按需安装新服务或移除旧服务来动态地构建较长或较短的服务链是很重要的。如示例,移动服务提供者可能需要为移动订户在服务链中安装新的TCP优化器来提升蜂窝链路上的TCP性能。如分开描述的,在一种情况下,这些服务通过虚拟服务设备来实现,并且在数据中心资源上进行操作。链中的服务的插入和删除被称为“水平缩放”服务链。
除了水平缩放,还有垂直缩放。通常情况下,预测操作服务链中的服务所要求的资源的量是困难的。就此,服务提供者在每个服务的基础上动态地增加或减少服务链中的服务的能力是很重要的。一个服务中额外的需求不一定会导致对其他服务中的能力的额外需求。这被称为用于特定服务的资源的“每个服务合理精简(per-service right-sizing)”。
服务设备通常被用作“黑匣子”,作为有形网络元件或在虚拟机上执行。服务提供者使用可能会或可能不会被设计为与服务链中的其他服务相互作用的同类最佳服务是很重要的。从数据平面角度看,到这样的服务的“接口”应当仅基于发送和接收由以太网报头或其他层2封装机制潜在地封装的IP分组。这些以太网可以是真实的或虚拟的。服务实例可以被嵌入在本文中所描述的修改的层3虚拟专用网(VPN)中,从而提供水平缩放和垂直缩放两者。
每一个服务实例由针对服务实例维持附着电路的一个或多个PE路由器“管理和服务”。这样的PE路由器可以是物理PE路由器,或可以是在虚拟形式中被托管的并且在超级管理器的虚拟机上执行的。术语(虚拟) PE路由器在本文中也被简单地称为“边缘路由器”,并且除了在某些情况下,这些术语在本文中可以互换使用。我们认识到的两种形式的PE路由器:一方面在超级管理器内核之上或之内作为虚拟网络设备(即,虚拟机)操作的、并且通过超级管理器内核隧道(即,tunctl(8))或虚拟以太网控制器(例如,单根输入/输出虚拟化,SR-IOV)功能来连接至服务实例的版本,或另一方面PE路由器通过(虚拟)网络(例如,VLAN,IP 隧道)的来连接至一个或多个(虚拟)服务实例的版本。在前者的情况中,特定虚拟PE被用来将IP分组发送至服务实例并且从服务实例接收IP 分组。服务实例和虚拟PE可以被共同驻留在管理程序内核上。在后者的情况中,通过向服务发送例如以太网帧,IP分组从(虚拟)PE被定向至服务实例,并且通过使(虚拟)PE成为服务实例的默认网关,将IP分组返回至(虚拟)PE。在这种情况下,(虚拟)PE不需要被共同驻留在管理程序内上。
在传统的路由技术中,从信令功能中分离出转发功能并且在控制面与转发面之间维持专有接口是不常见的。例如转发引擎在嵌入到超级管理器内核中的虚拟机上操作,或甚至在传统路由器中操作,这对于(虚拟)PE 没有什么不同。类似地,集成的控制面和分离的控制面通过打开的或关闭的接口的方式来控制转发面。
每一个服务实例管理一个或多个会话。会话被定义为端到端应用连接,通常通过它的5元组被识别:源地址、目的地址、协议类型、源端口、和目的端口(本文中也被称为会话流参数)。应当注意的是,其他“类型”的会话也可以存在,例如,如果多个这些端到端连接聚在一起,则可以形成会话。后者可以是语音和IP多媒体系统(IMS)解决方案的情况。
对与区域的(虚拟)PE路由器相结合的特定服务进行服务的(虚拟) PE的集合被称为“服务区”。下面结合图2-4更详细地描述了服务区。区域内的每一个(虚拟)PE维持服务区间流量的虚拟路由和转发(VRF)的功能,和在服务区之内将分组导向至合适的服务实例的服务路由和转发 (SRF)的功能。SRF维持服务实例与应用会话之间的映射,而VRF通过 IP-in-IP或MPLS隧道的方式被连接至随后的(虚拟)PE路由器,并且针对服务实例维持附着电路。SRF维持每个会话路由信息,然而VRF仅维持将流量从VRF路由至VRF的汇总路由信息。SRF和VRF可以被集成到 (虚拟)PE上的单一数据结构中。下面结合图5-8更详细地描述了SRF。
本文所提出的技术是针对执行用于服务区流量流的管理的若干功能的。
1.如何设置服务区的链并使用VRF在服务区内的(虚拟)PE之间建立邻接关系,以及如何管理这些链。
2.如何基于5元组路由(即,会话路由)建立(虚拟)PE/SRF与实际 (虚拟)设备之间的会话的映射。
3.如何分发所有(虚拟)PE/SRF之间的会话映射,从而使所有(虚拟)PE/VRF能够在区域内提供会话路由。
4.如何在每个服务区和每个(虚拟)PE基础上提供弹性服务支持,即,如何支持“垂直缩放”。
5.如何支持链的长度的动态改变,即,如何支持“水平缩放”。
针对用于管理服务的综合方法,本文提出了一系列技术。
本文提出的第一个技术是对允许任意长度服务链的RFC 4363外联网模型的扩展。外联网服务通过适当地将路由目标分配至服务区边缘路由器 /VRF、并通过VRF“泄露”汇总路由来被链接。这在下面结合图2-4进行描述。随后,任意服务链概念通过在本文中被称为会话路由和转发 (SRF)功能用服务区内的会话特定路由来扩展。SRF功能维持实际服务(实例)与在其上服务实例操作的流之间的映射。SRF功能维持分解服务路由状态。为了建立VRF链,每一个VRF在两个方向上被提供有两个服务区路由目标,一个标记有通告/重新发起路由,而另一个从“下一个”服务区导入路由。通过在服务区边缘路由器/VRF中建立这些路由目标来管理链。下面结合图5-8描述服务区内的路由分布。
任意长度的服务链
现在参考图2。图2示出了其中在图1示出的长度为“1”的服务链被扩展至任意长度的服务链的配置。图2示出了服务区100和120,也分别被表示为区域“i”和“j”。服务区是逻辑结构,不是物理结构。服务区i (100)包括线内应用服务110,并且服务区j(120)包括线内应用服务 130。例如,服务110可以是防火墙,并且服务130可以是超文本传输协议(HTTP)服务、深度包检测(DPI)功能、TCP优化器等等。此外,在每一个区域中可以存在相同服务的多个实例。例如,在区域i(100)中可以存在相同服务110的多个实例,并且在区域j(120)中可以存在相同服务130的多个实例。另外,这些服务110和130可以是在数据中心的设备上运行的虚拟机。可以存在在给定的服务区中运行的相同服务的数百个实例。
如示例,在区域i(100)中有多个路由器112、114和116,并且在区域j(120)中有多个路由器122、124和126。在给定服务区内的路由器通过在服务区i(100)和j(120)中分别在参考编号118和128处示出的附着电路的方式被连接至服务。图2示出的路由器以上面描述的结合图1的相同方式强迫流量通过它们各自服务区中的服务(或服务实例)。服务区 i(100)和j(120)中的边缘路由器116和126通过各种控制协议和数据通道的方式进行通信。例如,参考编号140示出了通过多协议BGP(MP- BGP)的控制协议交换,并且参考编号142示出了通过MPLS隧道的数据信道。应当理解的是在各种区域的PE路由器之间存在多个隧道和信令连接。边缘路由器116和126在本文中也被称为服务区边缘路由器。在给定的服务区中可以有多个边缘路由器,但是为了简单起见,在本说明书中在给定的服务区中仅示出了单个边缘路由器。
路由器116从另一个服务区(逻辑上在服务100之上,为了简单起见在图2中未显示)接收流量,强迫流量通过服务110(或服务110的若干实例中的一个),并且然后在服务110的处理之后将流量沿着隧道142转发至服务区j(120)中的路由器126。类似地,服务区j(120)中的路由器126通过隧道142从路由器116接收流量,强迫它到服务130(或服务 130的若干实例中的一个),并且然后将流量转发至另一个服务区或目的地(图2中未显示)。相同流出现在用于将流量供入服务区j(120)和服务区i(100)的相反的方向,并且然后前进到另一个服务区或目的地。
来自一个服务区中的路由器的流量可以被路由至另一个服务区中的若干路由器中的任一个。例如,路由器116可以选择将流量通过数据信道 (为了简单起见在图2中未示出)转发至服务区j(120)中的路由器122 而不是路由器126,等等。因此,状态(邻接信息)在服务区内的路由器之间和不同服务区中的路由器之间被适当地复制,或存在解决映射的和解协议。
每一个服务区被分配有路由目标。此外,路由目标被分配给唯一的服务区作为团体值,用于路由器之间通过控制协议的路由导入和导出。通过在服务区的边缘路由器处的路由目标的方式由目的网络前缀的适当的导入和导出,服务的链被创建。区域j(120)从区域i(100)导入路由目标,并且同样的,区域i(100)从区域j(120)导入路由目标用于返回/默认路径。图2中示出的每一个路由器具有适当的服务区路由目标,并且导入和导出适当的地址。这包括从下一个服务区接收一组地址,将服务区路由目标改变为它自己的服务区导出路由目标,并且针对先前的服务区重新发起这些地址,以便建立链。要完成这项操作的所有必要的信令通过控制协议 (例如,BGP或任意其他因特网网关协议)来执行。服务区中的边缘路由器之间的通告以与服务区之间的流量流相反的反向被发送。例如,如果流量从第一服务区流动(该第一服务区是第二服务区的上游),则路由通告从第二服务区的边缘路由器被发送至第一服务区的边缘路由器。
该架构的益处是在给定服务区中的服务能力可以是可变的,以及给定服务区中的相关联的路由器的数量可以是可变的。具体的,如果路由器是虚拟PE路由器,则可以通过启动虚拟机、用虚拟PE功能填充虚拟机、配设适当的服务区路由目标策略、以及通知所有对等体该路由器现在启用并且可用于路由服务来添加新虚拟PE路由器。
例如,如图2中所显示,在162处,服务区i(100)中的路由器116 通告至区域j(120)的默认路由,以便对于期望被转发至区域i(100)的任意流量,区域j(120)中的路由器知道通过该默认路由来发送流量。通告162具有下列信息:RT(i),路由器116(下一跳)的地址是1.2.3.4,并且它具有到0/0的路由(默认路由)。在150处,区域j(120)中的路由器126从区域i(100)中的路由器116导入标记有RT(i)的路由。当从区域j(120)接收流量时,路由器116做出关于区域i(100)将要对该流量使用服务110的哪个实例的决定。
同样,针对区域j(120),在152处,路由器126向区域i(100)中的路由器116导出下列信息:RT(j),路由器126(下一跳)的地址是 2.3.4.5,并且它具有到10.1/16的路由。在160处,区域i(100)中的路由器116从区域j(120)中的路由器126导入标记有RT(j)的路由。这样做,对于期望被转发至区域j(120)的任意流量,区域i(100)中的路由器知道通过区域i(100)中的路由器116来发送流量。当从区域i(100) 接收流量时,路由器126做出关于区域j(120)将要对该流量使用服务 130的哪个实例的决定。
图2在区域i(100)处还示出了两个附加项的信息170和172。这些项对应于区域i(100)针对目的网络或源网络向服务通告如何从(虚拟) PE和如何对PE来获得分组。
现在转向图3A,示出了描述被执行用于链接链服务区的基础操作的流程图。在200处,路由目标(RT)被分配给每一个服务区。可以在网络管理装置处做出该分配。在210处,每一个服务区内的虚拟PE边缘路由器在学习到新路由之后,通过用标记有它的路由目标的目的网络前缀来通告路由。在220处,服务链是以服务区的虚拟PE边缘路由器处的路由目标的方式通过从目的网络或下游服务区导入目的网络前缀并且向上游服务区或源网络导出目的网络前缀来创建的链。
图3B是更详细地示出了由边缘路由器执行的操作的流程图。在这个范例中,存在第一服务区或源网络,即相对于流量流是第二服务区的上游,并且存在第三服务区,即相对于流量流是第一服务区的上游。在230 处,第一服务区的边缘路由器从第二服务区或目的网络的边缘路由器接收路由通告,该路由通告通告标记有第二服务区(或目的网络)的路由目标的第二服务区或目的网络的目的网络前缀。在240处,第一服务区的边缘路由器基于从第二服务区或目的网络的边缘路由器接收的路由通告来导入针对第二服务区或目的网络通告的目的网络前缀。
在250处,第一服务区的边缘路由器重新发起自第二服务区或目的网络的边缘路由器导入的路由,以便第一服务区的边缘路由器将其自身设置为转发的下一跳,并且用第一服务区的路由目标来替换第二服务区的路由目标以用于由第三服务区进行导入,该第三服务区相对于流量流是第一服务区的更上游。重新发起操作包括向第三服务区或源网络的边缘路由器通告从第二服务区的边缘路由器学习到的重新发起的路由通告,该重新发起的路由通告包括指示第二服务区的目的网络前缀、作为转发的下一跳的第一服务区的边缘路由器的地址和、第一服务区的路由目标的信息。
此外,值得注意的是,重新发起被执行用来吸引流量到服务区的“前端”,即“服务区边缘路由器”。其他服务区对服务区内的内部服务实例拓扑一无所知,而是只知道服务区边缘路由器。
参考图4来考虑下面的示例。在该示例中,存在两个路由区域,在 2.0.0.0/8处的路由区域A和路由区域B。存在两个服务区,服务区P和服务区Q。在这些服务区和路由区域的边缘上存在(虚拟)PE路由器,在图 4中被简称为“VPE”。例如,在参考编号260处的(虚拟)PEB在路由区域B中,在262处的(虚拟)PE Q位于服务区Q中,在264处的(虚拟)PE P在服务区P中,在266处的VPE A在路由区域A中。
下面的流程是图4中示出的示例配置中的服务区路由目标重新发起 (也被称为VRF安装)的示例。在270处,子网2.0.0.0/8的初始路由通告用导出RT(4)和下一跳3.0.0.4从VPE B被发送。在272处,服务区Q 在VPE Q处使用导入RT(4)来导入路由。因此,VPE Q具有指向下一跳(3.0.0.4)(即VPE B)的2.0.0.0/8。在274处,VPE Q用其自身作为下一跳(3.0.0.3)重新发起子网2.0.0.0/8并且附加RT(3)。在276处,服务区P在VPE P处使用导入RT(3)来导入路由。因此,VPE P具有指向下一跳(3.0.0.3)(即VPE Q)的2.0.0.0/8。在278处,VPE P用其自身作为下一跳(3.0.0.2)重新发起子网2.0.0.0/8并且附加RT(2)。在 280处,VPE A使用导入RT(2)来导入路由。因此,VPE A具有指向下一跳(3.0.0.2)(即VPE P)的2.0.0.0/8。因此,图4的示例示出了两个路由区域之间链接在一起的两个服务区。
当路由在服务区之间被重新发起时,通告在通告中携带聚合路由的偏好的隧道机制。该隧道机制可以是标准的MPLS路径、通用路由封装 (GRE)、MPLSoIP/GRE、虚拟可扩展LAN(VXLAN)、或任意其他隧道机制。虽然没有规定特定的隧道机制,但是隧道需要在其头部携带指向下一跳的VRF的指示符(例如,MPLS标签或其他标识符)。服务区之间路由是通过聚合路由的方式来控制信令的量的。如果配置是稳定的话 (即,如果没有路由重新配置),则信令的量应当接近于无。虽然聚合路由是分布式的,但这些聚合可以选择性地额外携带用于定向某些流的协议特定参数。这种情况的示例是,服务区可以通告<协议=TCP端口=80>来吸引所有HTTP流量进入服务区。隧道可以携带会话的特定信息,有益于后续服务区的处理。此外,在特殊情况下,服务实例本身可以与(虚拟)PE 集成来使服务实例能够学习这些额外的参数,或可替代地,(虚拟)PE维持隧道作为至服务实例的附着电路来携带额外的参数。
流量路由是基于简单的聚合目的前缀路由通告的。但是,在特殊情况下,聚合基于源的路由也可以被考虑,虽然这将包括(MP-)BGP标准的改变。
链的重新配置可以被动态地执行,然而需要注意避免在链路中创建循环。考虑路由区域X和服务区P和Q连接至互联网的示例。为了在P和Q 之间插入服务R,R中的第一VRF需要在服务区Q中的路由器可以导入标记有RT(R)的路由和服务区P中的路由器可以导入标记有RT(R’)的路由之前导入标记有RT(P)的路由。最后,服务区Q中的路由器可以停止导入并且主动地丢弃标记有RT(P)的路由,同时服务区P中的路由器可以停止导入并且主动地丢弃标记有RT(Q)的路由。为了移除服务区 R,服务区P和服务区Q之间的第一路由需要在通过服务器R的路由可以被丢弃之前被建立。这是服务链的水平缩放。类似的技术被用于插入默认路由。
虽然链机制在本文中结合RFC 4364信令的使用被描述,但是替代的信令的形式也可以被使用。如示例,外部控制器可以通过外部接口的方式来下载聚合路由至每一个(虚拟)PE的VRF。
(虚拟)PE可以动态地被创建和撤销。虽然常规路由技术可以被用来分配通过服务区的聚合路由(例如聚合路由到先前跳的分配),但是(虚拟)PE需要被配设适当的(路由目标)参数来使其发生。每一个(虚拟) PE可以为外部接口服务,该外部接口允许中央控制器来配设(虚拟) PE。该中央控制器被配置用于新近创建的(虚拟)PE中的VRF的动态实例化,安装与该VRF相关联的适当的导出和导入路由目标,其他配置参数使(虚拟)PE能够与其他(虚拟)PE进行通信。类似地,中央控制器从路由基础设施中移除(虚拟)PE。云管理系统可以处理携带虚拟PE的适当的虚拟机的实际实例化和附着电路的建立。后面描述的图8示出了在配设和重新配置VPE中的中央控制器的示例。
会话路由——服务路由和转发(SRF)
服务区内的路由和信令是基于会话路由的。虽然区之间的通信是基于 VRF的,但是服务区内的路由和信令是基于“服务路由和转发”(SRF) 的。对于服务内路由,列出针对每一个会话的使用哪一个特定地址的哪一个特定虚拟设备正在服务特定会话是重要的。其重要的原因是,通常情况下,服务实例分配“状态”来维持服务。如果分组不能被保证在相同服务实例处被传递,则通常没有服务可以被提供。
为了与服务实例进行通信,服务区中的一个或多个(虚拟)PE/VRF 维持到一个或多个服务实例的一个或多个附着电路。这些附着电路可以是基于VLAN技术、超级管理器内核隧道(例如,隧道(8))、虚拟以太网(例如,SR-IOV)切换功能、或其他附加连接类型的。在基于超级管理器的内核隧道被使用的情况下,超级管理器内核共同驻留的虚拟PE终止至服务实例的附加隧道。在这种情况下,去往该服务的所有分组需要在分组可以被传递至适当的服务实例之前首先被路由至共同驻留的(虚拟) PE。
现在转向图5,提出了附着电路在服务区中是如何操作的描述。参考编号300是服务区,并且图5中示出的元件是可以在数据中心中被实现的服务区的元件。数据中心包括多个刀片式服务器,每一个刀片式服务器具有一个或多个处理器核心并且能够运行多个虚拟机。虚拟路由器320在刀片式服务器310上的虚拟机中运行,并且操作网络接口卡(NIC)322。虚拟路由器320等同于上述的结合图2中提到的服务区边缘路由器。刀片式服务器310(1)还存储多个VRF中的每一个的数据结构,其中多个VRF 例如,VRF 330(1)和330(2),和VRF 332(1)和332(2),被分别标记为VRF(i)、VRF(j)、VRF(k)和VRF(1)。在数据中心中存在单独的处理器核心312(1)-312(n),每一个处理器核心在虚拟机上运行服务。可能在每个处理器核心上都运行服务。例如,处理器核心312 (1)运行服务340(也被称为SVC(Q)),处理器核心312(2)运行相同服务340的另一个实例,并且处理器核心312(n)运行服务342(也被称为SVC(P))。
在服务340和342与VRF之间存在连接的多个附着电路。例如,附着电路350(1)将流量从VRF(i)连接至处理器核心312(1)和312(2) 中的SVC(Q)。附着电路350(2)将流量从VRF(k)连接至处理器核心312(n)中的SVC(P)。附着电路350(3)将流量(在SVC(P)处理之后)从SVC(P)连接至VRF(1),并且附着电路350(4)将流量 (在SVC(Q)处理之后)从处理器核心312(1)和312(2)中的SVC (Q)连接至VRF(j)。刀片式服务器310(1)存储每一个VRF的数据结构。每一个VRF包括关于如何将分组切换至服务的信息。此外,针对在两个方向之一上通过服务区的流量流,VRF 330(1)和330(2)是伙伴 VRF,同样VRF 332(1)和332(2)也是伙伴VRF。
应当理解的是虽然图5示出了单一服务区,但是任意给出的服务区可以是其他服务区的链的一部分。因此,图5示出了箭头360和362来指示通过服务区300的、与两个不同服务链(分别被表示为链X和链Y)相关联的流量。
虚拟路由器320将从第三方通过隧道(例如,MPLS隧道)接收被封装有报头的IP分组。在报头内是指出存储在刀片式服务器310(1)中的 VRF数据结构中的特定VRF的标签。例如,考虑到达数据中心的分组,通过虚拟路由器320,与服务链Y相关联分组被路由到VRF330(1)。 VRF 330(1)检查分组的IP地址,并且将分组转发至适当的服务,例如 SVC(Q)。被存储的信息用来指示SVC(Q)实例(在处理器核心312 (1)上或在处理器核心312(2)上)中的哪一个正在服务该分组的IP地址。VRF 330(2)在分组被SVC(Q)处理之后接收该分组,并且将它适当地转发出服务区。VRF 332(1)和332(2)以类似的方式操作链X上的流量。
由于VRF 330(2)通过链Y学习到它具有到达特定下游网络的可能性,可能发生两件事。第一,VRF 330(2)向它的伙伴VRF 330(1)透露该信息,VRF 330(1)然后可以重新发起该网络地址。第二,在每一个 SRF之内,关于如何双向地为服务链路由单独的流量流的状态被维持。更普遍的信息被存储来指示每一个SRF应当基于流量的特定分组流(例如,流量会话的IP地址)将流量转发至哪一个服务。这个操作被称为服务区内的会话路由。
现在转向图6,描述服务区中的SRF功能和VRF功能的操作的流程图被示出。如上面结合图5所描述的,多个VRF功能在(虚拟)PE边缘路由器中被提供,在(虚拟)PE边缘路由器处流量在特定服务区中被接收,并且多个附着电路在VRF功能与服务实例之间被连接。每一个VRF功能存储维持用于流量流去往和来自相应服务实例的相应附着电路的数据。在 400处,SRF功能存储会话信息并且结合关联的VRF来选择使用由VRF 功能存储的哪些附加电路,以用于将在特定服务区的(虚拟)PE边缘路由器处接收到的流量导向至服务实例和从服务实例接收回流量的目的,。会话信息表示根据分组的会话流参数用于传递至服务实例的分组会话到附着电路的分配。在410处,特定服务区的(虚拟)PE边缘路由器的VRF功能接收分组。在420处,VRF功能决定附着电路通过分组和SRF功能转发信息。在430处,SRF功能将会话流参数(例如,5元组分组)与存储在会话表中的会话信息进行匹配,并且将具有适当的会话信息的分组传递回 VRF功能。在440处,VRF功能根据会话信息通过附着电路将分组转发至服务实例。
总结图6的流程图的操作和图5的布置,流量在特定服务区中的边缘路由器处被接收。流量被导向特定服务区中的服务实例。流量从特定服务区中的服务实例被接收回,并且从特定服务区被转发。如图5中所示,服务区可以包括多个服务实例,并且在这种情况下,确定将流量导向特定服务区中的多个服务实例中的哪一个是必要的。上面图6所描述的操作阐述了用于确定流量如何被导向服务区之内的服务实例的机制。
如示例,HTTP服务区可以具有许多单独的虚拟HTTP服务实例,并且单独的会话到适当的HTTP服务实例的转发通过在服务区中操作的 VPE/VRF/SRF来管理。如果虚拟机X托管移动节点2.0.0.1的HTTP代理,并且通过具有IP地址10.0.1.2的VLAN 12是可到达的,则(虚拟) PE中的SRF功能将针对从移动节点发起的流量列出具有“源=2.0.0.1/32 协议=TCP端口=80”指向在“电路=VLAN:12”处的“vmaddr=10.0.1.2”的路由。类似地,将流量返回到在VRF中匹配目的地址。如果只能由在地址192.168.10.4处的VPE通过隧道8到达HTTP服务,则路由条目附加地携带“电路=192.168.10.4”条款。如果防火墙服务将与HTTP服务被并行应用,则HTTP VRF将维持到防火墙VRF的默认路由,例如,在防火墙服务中存在多个VPE的情况下的<目的=0/0下一跳=FW(A)下一跳=FW(B)>。
参考图7,描述了SRF和VRF功能的示例。图7与图4类似,具有服务区P和Q,和路由区域A和B。如上面结合图4所描述的,VPE被提供。在500处,从源4.0.0.1:333去往2.0.0.1端口80的TCP分组在VPE A 处被接收。在510处,在VPE A处进入的VRF具有用于2.0.0.0/8指向下一跳3.0.0.2(即VPE P)的转发条目。分组被转发至VPE P。在520处, VPE P使用SRF功能和会话信息表525中的信息来转发分组。发现会话信息表525中的条目与源4.0.0.1、目的端口80匹配,其指向通过附着电路 VLAN 12是可到达的VM地址10.0.0.2。分组被转发至具有地址10.0.0.2 的VM(即VM(P1))。在530处,从VM(P1)返回的分组由VPE P 基于在VPE P处的VRF功能中的查找功能来转发。VPE P确定目的 2.0.0.0/8通过下一跳(3.0.0.3)(即VPE Q)是可到达的。在540处,在 VPE Q处进入的分组基于在545处的VRF功能条目被转发至目的2.0.0.0/8 (即下一跳(3.0.0.4)(即VPE B))。
SRF状态需要在服务区中被分发,从而确保所有SRF功能可以将分组路由至适当的服务实例。存在许多方法来实现这种分发,并且本公开没有指定服务区会话状态管理的任何特定形式。实际上,甚至可以在单一系统中假设不同种类的SRF状态管理系统。下面是SRF会话状态信息分发的选项。
第一,分发会话状态的一个机制是使用外部控制器,一旦新服务流在服务区中被确认该外部控制器就在所有的VPE/SRF中安装服务路由。在收到会话中的第一分组时,SRF通知新会话的中央控制器,控制器做出服务实例分配决定,并且通知所有SRF路由决定。为此,参考图8,其示出了在数据中心中连接至物理服务器610的控制器600。物理服务器610可以具有运行虚拟机的任意数量的处理核心,该虚拟机包括如在参考编号 620(1)-520(n)处示出的多个VPE的虚拟机。控制器600可以是物理服务器或服务器上的软件过程,控制器是云管理系统的一部分。控制器 600向VPE VM 520(1)-520(n)发送包括会话状态信息的配置消息。此外,控制器600可以执行上述用于创建和撤销虚拟PE的功能,即,对新近创建的(虚拟)PE中的VRF的动态实例化、适当的导出和导入与该 VRF相关联的路由目标的安装、使(虚拟)PE能够与其他(虚拟)PE进行通信的其他配置参数。
在会话路由状态中使用“会话密钥”方面,假设任意上述的5元组或分组的IP分组报头的任意部分可以被用作会话密钥。在源路由被使用的情况下,只有IP分组的的源地址有助于指引分组流。在其他情况下,更多的头字段可以被使用,包括但不限于协议类型、协议编号、和目的地址范围 (例如,将从2.1.0/24到http://cnn.com的所有流量路由至特定服务链)。在服务系统是在移动环境中使用的情况下,3GPP通用分组无线业务 (GPRS)隧道协议(GTP)的隧道标识符(TEID)可以被用作会话密钥 (的一部分),或在会话路由是针对IEEE WiMAX、3GPP2’s CDMA2000/EVDO、或电缆CAPWAP系统被定义的情况下,通用路由封装(GRE)密钥可以被用作会话路由密钥的一部分。
在替代的形式中,路由安装显得更“懒”。当第一分组到达服务实例时,在SRF功能中,SRF功能将会话密钥匹配至列出的会话,如果没有找到会话路由信息,则SRF功能请求与会话密钥相关联的路由的安装。如果控制器认为分组是新会话的一部分,则控制器选择服务实例来托管会话,并且通知调用会话映射的SRF功能。如果分组是已经现有会话的一部分,则控制器通知调用正在服务会话的SRF功能。
在另一个形式中,SRF功能被操作为分布式服务。服务区中所有参与的SRF可以执行状态分布协议来通知其他参与者本地会话路由决定。如示例,如果服务实例接收输入的会话的第一分组,则它可以单方面决定哪一个服务实例(包括其自身)来托管该服务。然后通过例如在诸如MP-BGP 之类的现有路由协议上可靠的多播或捎带该信息的方式来将该决定分发至服务区中的所有或部分其他参与者。在对此的变化中,在做出本地决定之前,(虚拟)PE可以首先从服务区中的其他参与者征求映射信息,如果没有其他(虚拟)PE支持该映射,则(虚拟)PE可以继续做出本地会话路由决定。关于是否将状态分发至其他参与者和将什么状态分发至其他参与者的决定是基于服务区的会话状态可靠性要求的。在某些情况下,丢失会话路由状态不是问题,并且不需要冗余。在其他情况下,至关重要的是,所有SRF功能是完全同步的,要求不同状态一致性协议。
另一个可能是,如果需要的话,则服务区会话路由状态可以被保持在分布式散列表(DHT)中,其中“主要”SRF功能安装路由,如果需要的话,则“次要”SRF功能可以加载会话路由状态。
另一个可能是完全静态地建立会话路由基础设施来避免任何会话状态的一致性协议。
简单地超时机制可以被用来清除SRF条目。
每一个服务区可以通过新服务实例和具有相关联的VRF功能和SRF 功能的虚拟PE路由器的实例化来动态地调整它的路由、转发、和服务容量。在虚拟PE的至少一个形式中,常规路由技术被用来针对它的VRF功能发送邻接关系信号。当新虚拟PE/VRF被配设有适当的路由目标时,它称为路由基础设施的一部分。通过导入下一跳的适当的路由目标的方式来学习下一跳,并且将这些学习到的路由重新发起至前一跳。SRF功能中的会话状态通过外部控制器将所有会话路由下载至新实例、或通过使用分布式核对程序来学习。类似地,为了减少容量,虚拟PE被简单地从集合中移除。同样,VRF邻接关系状态被自动地调整,并且由于SRF状态在区域内是一致的,所以SRF可以被简单地丢弃。如果服务实例本身被丢弃,则指向该服务实例的所有会话也会被丢弃。
上述至(虚拟)PE的外部接口可以被用来指导(虚拟)PE如何管理服务区中的SRF功能。可以被安装在(虚拟)PE上的参数是服务区中的 SRF功能维持一致性所用的方法,包括建立反映MP-BGP参数的参数、 DHT信息、多播树信息、或该一致性管理需要的任意其他参数。
在专用参数可以从流量流被收集、并且在(虚拟)PE中存在可用的专用功能的情况下,专用参数可以被用于会话路由目的。专用参数可以包括 HTTP参数。与维持会话密钥相关联的数据结构是专用的。
现在转向图9,示出了被配置为执行如本文所描述的边缘路由器(例如,(虚拟)PE路由器)的操作的路由器的示例框图。应当理解的是,在图9中示出的虚拟PE是软件仿真的或虚拟化的版本。在参考编号700处示出的PE路由器包括多个端口710(1)-710(m)、路由器专用集成电路(ASIC)620、处理器或中央处理单元(CPU)730、和存储器740。端口710(1)-710(m)从路由器接收入站分组和出站分组。路由器ASIC 720根据路由逻辑以及来自处理器730的控制将输入分组导向至端口用于出站。例如,处理器730是微处理器或微控制器,并且执行存储在存储器 740中的服务区链固件/软件750的指令。服务区链固件/软件750包括指令,当该指令由处理器730执行时,使得处理器执行本文结合图1-8所描述的PE路由器的操作。
存储器740可以包括只读存储器(ROM)、随机存取存储器 (RAM)、磁盘存储介质设备、光存储介质设备、闪存设备、电、光、或其他物理/有形存储器存储设备。通常,存储器740可以包括用软件编码的一个或多个有形(非暂态)计算机可读存储介质(例如,存储器设备),该软件包括计算机可执行指令,并且当该软件被(处理器740)执行时,可操作以执行本文所描述的操作。
总之,本文提出了通过链接服务区的方式管理服务链和服务区内的会话路由的技术。本文提出了信令协议可以链接区域的机制,以及这些链如何能够被动态地改变,并且通过本文提出的机制单独的会话路由信息在服务区内被分发。
通过扩展外联网技术的服务链的一个优势是,基础链和邻接关系信令功能在现有路由器中已经是可用的;但是它不用于一般服务链过程。通过引入服务的水平和垂直缩放、管理SRF功能中的每一个会话状态、并且将 SRF功能连接至VRF,这些技术被建立在外联网设备上。任意数量的不同控制协议可以被用来管理VRF功能和SRF功能的集合中的路由。通过在 (虚拟)PE之内嵌入会话管理,服务可以不用改变而被引入至服务链中。
上面的描述仅旨在给出示例。

Claims (16)

1.一种用于建立网络服务链的方法,包括:
在网络环境中提供一个或多个服务区,每一个服务区包括将被应用于网络流量的线内应用服务的多个实例和将网络流量导向至多个服务的一个或多个路由器;
将路由目标分配给每一个服务区以用作在其他服务区、目的网络或源网络的路由器之间通过控制协议进行路由导入和导出的团体值;
每一个服务区或目的网络中的边缘路由器通过标记有它的路由目标的目的网络前缀来通告路由;
以在所述服务区或源网络的边缘路由器处的路由目标的方式通过导入和导出目的网络前缀来创建服务链;
在特定服务区中的边缘路由器处接收流量;
将所述流量导向至所述特定服务区中的服务实例;
从所述特定服务区中的服务实例接收回流量;
将所述流量从所述特定服务区转发;
确定在所述特定服务区中将所述流量导向至所述多个服务实例中的哪一个服务实例;
在所述边缘路由器中提供多个虚拟路由和转发VRF功能,流量在所述特定服务区中的所述边缘路由器处被接收,并且多个附着电路被连接于VRF功能与服务实例之间,每一个VRF功能存储维持用于去往和来自相应的服务实例的流量流的相应的附着电路的数据;以及
提供会话路由和转发SRF功能,该SRF功能存储会话信息来选择使用由VRF功能存储的哪些附着电路,以用于将在所述特定服务区的所述边缘路由器处接收到的流量导向至服务实例和从所述服务实例接收回流量的目的,所述会话信息表示根据分组的会话流参数对分组会话到附着电路的分配以用于传递至服务实例。
2.如权利要求1所述的方法,还包括:
在第一服务区的边缘路由器处,重新发起自第二服务区或目的网络导入的路由,以便所述第一服务区的边缘路由器将其本身设置为转发的下一跳,并且所述第一服务区的路由目标来替换所述第二服务区的路由目标以用于由第三服务区进行导入,所述第三服务区相对于流量流是所述第一服务区的更上游。
3.如权利要求2所述的方法,其中创建服务链包括:
在所述第一服务区的所述边缘路由器处接收来自所述第二服务区或目的网络的边缘路由器的路由通告,所述路由通告通告标记有所述第二服务区的路由目标的所述第二服务区或目的网络的目的网络前缀;以及
在所述第一服务区的所述边缘路由器处,基于从所述第二服务区的边缘路由器接收的所述路由通告来导入针对所述第二服务区或目的网络的所述目的网络前缀。
4.如权利要求3所述的方法,其中重新发起包括:
向所述第三服务区或源网络的边缘路由器通告从所述第二服务区的边缘路由器学习到的重新发起的路由通告,所述重新发起的路由通告包括指示所述第二服务区的目的网络前缀、作为所述转发的下一跳的所述第一服务区的边缘路由器的地址、和所述第一服务区的路由目标的信息。
5.如权利要求3所述的方法,其中,所述服务区的边缘路由器是物理路由器或虚拟路由器。
6.如权利要求1所述的方法,其中,接收流量包括在所述特定服务区的所述边缘路由器的VRF功能处接收分组,其中导向包括:
将分组传递至所述SRF功能;
所述SRF功能将所述分组的会话流参数与所述会话信息进行匹配;
将具有适当的会话信息的所述分组传递回所述VRF功能;以及
所述VRF功能根据所述会话信息通过附着电路将分组转发至服务实例。
7.一种用于建立网络服务链的装置,包括:
多个端口,所述多个端口被配置为从网络接收分组和将输出分组发送至所述网络;
路由器单元,所述路由器单元被耦合到所述多个端口,并且被配置为做出关于如何将接收到的分组路由至用于输出至所述网络的端口的决定;
处理器,所述处理器被耦合到所述路由器单元,其中所述处理器被配置为:
在网络环境中通过标记有服务区或目的网络的路由目标的目的网络前缀来通告路由,所述网络环境包括一个或多个服务区,每一个服务区包括将要被应用于网络流量的线内应用服务的多个实例,以及路由目标,所述路由目标已经被分配给唯一的服务区以用作在其他服务区、目的网络或源网络的路由器之间通过控制协议的路由进行导入和导出的团体值;
以在所述服务区或源网络的边缘路由器处的路由目标的方式通过导入和导出目的网络前缀的来创建服务链;
在特定服务区中的边缘路由器处接收流量;
将所述流量导向至所述特定服务区中的服务实例;
从所述特定服务区中的服务实例接收回流量;
将所述流量从所述特定服务区转发;
确定在所述特定服务区中将所述流量导向至多个服务实例中的哪一个服务实例;
执行多个虚拟路由和转发VRF功能,每一个VRF功能存储维持用于去往和来自相应的服务实例的流量流的相应的附着电路的数据;
以及
执行会话路由和转发SRF功能,该SRF功能存储会话信息来选择使用由VRF功能存储的哪些附加电路,以用于将在所述特定服务区的所述边缘路由器处接收到的流量导向至服务实例和从所述服务实例接收回流量的目的,所述会话信息表示根据分组的会话流参数对分组会话到附加电路的分配以用于传递至服务实例。
8.如权利要求7所述的装置,其中,所述处理器还被配置为:
对于第一服务区的边缘路由器,重新发起自第二服务区或目的网络导入的路由,以便所述第一服务区的边缘路由器将其本身设置为转发的下一跳,并且用所述第一服务区的路由目标来替换所述第二服务区的路由目标以用于由第三服务区进行导入,所述第三服务区相对于流量流是所述第一服务区的更上游。
9.如权利要求8所述的装置,其中,所述处理器还被配置为:
在所述第一服务区的所述边缘路由器处接收来自所述第二服务区或目的网络的边缘路由器的路由通告,所述路由通告通告标记有所述第二服务区的路由目标的所述第二服务区或目的网络的目的网络前缀;以及
基于从所述第二服务区的所述边缘路由器接收的所述路由通告来导入针对所述第二服务区或目的网络的所述目的网络前缀。
10.如权利要求9所述的装置,其中,所述处理器还被配置为:
向所述第三服务区或源网络的边缘路由器通告从所述第二服务区的边缘路由器学习到的重新发起的路由通告,所述重新发起的路由通告包括指示所述第二服务区的目的网络前缀、作为所述转发的下一跳的所述第一服务区的边缘路由器的地址、和所述第一服务区的路由目标的信息。
11.如权利要求7所述的装置,其中,对于在VRF功能处的分组流接收到的分组,所述处理器被配置为:
将分组传递至所述SRF功能;
使得所述SRF功能将所述分组的会话流参数与所述会话信息进行匹配;
将具有适当的会话信息的所述分组传递回所述VRF功能;以及
使得所述VRF功能根据所述会话信息通过附着电路将分组转发至服务实例。
12.一个或多个用软件编码的计算机可读存储介质,所述软件包括计算机可执行指令,并且当所述软件被执行时,可操作用于:
在网络环境中通过标记有服务区或目的网络的路由目标的目的网络前缀来通告路由,所述网络环境包括一个或多个服务区,每一个服务区包括将要被应用于网络流量的线内应用服务的多个实例,以及路由目标,所述路由目标已经被分配给唯一的服务区以用作在其他服务区、目的网络或源网络的路由器之间通过控制协议的路由进行导入和导出的团体值;
以在所述服务区或源网络的边缘路由器处的路由目标的方式通过导入和导出目的网络前缀来创建服务链;
在特定服务区中的边缘路由器处接收流量;
将所述流量导向至所述特定服务区中的服务实例;
从所述特定服务区中的服务实例接收回流量;
将所述流量从所述特定服务区转发;
确定在所述特定服务区中将所述流量导向至多个服务实例中的哪一个服务实例;
执行多个虚拟路由和转发VRF功能,每一个VRF功能存储维持用于去往和来自相应的服务实例的流量流的相应的附着电路的数据;以及
执行会话路由和转发SRF功能,该SRF功能存储会话信息来选择使用由VRF功能存储的哪些附加电路,以用于将在所述特定服务区的所述边缘路由器处接收到的流量导向至服务实例和从所述服务实例接收回流量的目的,所述会话信息表示根据分组的会话流参数对分组会话到附加电路的分配以用于传递至服务实例。
13.如权利要求12所述的计算机可读存储介质,还包括指令,可操作用于:
对于第一服务区的边缘路由器,重新发起自第二服务区或目的网络导入的路由,以便所述第一服务区的边缘路由器将其本身设置为转发的下一跳,并且用所述第一服务区的路由目标来替换所述第二服务区的路由目标以用于由第三服务区进行导入,所述第三服务区相对于流量流是所述第一服务区的更上游。
14.如权利要求13所述的计算机可读存储介质,还包括指令,可操作用于:
在所述第一服务区的所述边缘路由器处接收来自所述第二服务区或目的网络的边缘路由器的路由通告,所述路由通告通告标记有所述第二服务区的路由目标的所述第二服务区或目的网络的目的网络前缀;以及
基于从所述第二服务区的所述边缘路由器接收的所述路由通告来导入针对所述第二服务区或目的网络的所述目的网络前缀。
15.如权利要求14所述的计算机可读存储介质,还包括指令,可操作用于:
向所述第三服务区或源网络的边缘路由器通告从所述第二服务区的边缘路由器学习到的重新发起的路由通告,所述重新发起的路由通告包括指示所述第二服务区的目的网络前缀、作为所述转发的下一跳的所述第一服务区的边缘路由器的地址、和所述第一服务区的路由目标的信息。
16.如权利要求12所述的计算机可读存储介质,还包括指令,可操作用于:
对于在VRF功能处的分组流接收到的分组,将分组传递至所述SRF功能;
使得所述SRF功能将所述分组的会话流参数与所述会话信息进行匹配;
将具有适当的会话信息的所述分组传递回所述VRF功能;以及
使得所述VRF功能根据所述会话信息通过附着电路将分组转发至服务实例。
CN201480029433.8A 2013-05-21 2014-05-06 一种用于建立网络服务链的方法、装置及计算机可读存储介质 Expired - Fee Related CN105247822B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/898,932 2013-05-21
US13/898,932 US9826025B2 (en) 2013-05-21 2013-05-21 Chaining service zones by way of route re-origination
PCT/US2014/036907 WO2014189670A1 (en) 2013-05-21 2014-05-06 Chaining service zones by way of route re-origination

Publications (2)

Publication Number Publication Date
CN105247822A CN105247822A (zh) 2016-01-13
CN105247822B true CN105247822B (zh) 2018-09-18

Family

ID=50896566

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201480029433.8A Expired - Fee Related CN105247822B (zh) 2013-05-21 2014-05-06 一种用于建立网络服务链的方法、装置及计算机可读存储介质

Country Status (4)

Country Link
US (2) US9826025B2 (zh)
EP (1) EP3000206B1 (zh)
CN (1) CN105247822B (zh)
WO (1) WO2014189670A1 (zh)

Families Citing this family (61)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8743885B2 (en) 2011-05-03 2014-06-03 Cisco Technology, Inc. Mobile service routing in a network environment
US9088584B2 (en) 2011-12-16 2015-07-21 Cisco Technology, Inc. System and method for non-disruptive management of servers in a network environment
US9225638B2 (en) 2013-05-09 2015-12-29 Vmware, Inc. Method and system for service switching using service tags
US9509614B2 (en) 2013-06-20 2016-11-29 Cisco Technology, Inc. Hierarchical load balancing in a network environment
US9374297B2 (en) 2013-12-17 2016-06-21 Cisco Technology, Inc. Method for implicit session routing
WO2015143610A1 (zh) * 2014-03-24 2015-10-01 华为技术有限公司 一种nfv系统的业务实现方法及通信单元
US9559950B2 (en) * 2014-03-31 2017-01-31 Tigera, Inc. Data center networks
US9344364B2 (en) * 2014-03-31 2016-05-17 Metaswitch Networks Ltd. Data center networks
US9813258B2 (en) 2014-03-31 2017-11-07 Tigera, Inc. Data center networks
US9379931B2 (en) 2014-05-16 2016-06-28 Cisco Technology, Inc. System and method for transporting information to services in a network environment
US9479443B2 (en) 2014-05-16 2016-10-25 Cisco Technology, Inc. System and method for transporting information to services in a network environment
US9979698B2 (en) 2014-06-27 2018-05-22 iPhotonix Local internet with quality of service (QoS) egress queuing
US20150381418A1 (en) * 2014-06-27 2015-12-31 iPhotonix Remote Orchestration of Virtual Machine Updates
US9794172B2 (en) * 2014-06-27 2017-10-17 iPhotonix Edge network virtualization
US10516568B2 (en) 2014-09-30 2019-12-24 Nicira, Inc. Controller driven reconfiguration of a multi-layered application or service model
US9825810B2 (en) 2014-09-30 2017-11-21 Nicira, Inc. Method and apparatus for distributing load among a plurality of service nodes
US10135737B2 (en) 2014-09-30 2018-11-20 Nicira, Inc. Distributed load balancing systems
US10417025B2 (en) 2014-11-18 2019-09-17 Cisco Technology, Inc. System and method to chain distributed applications in a network environment
US9531850B2 (en) * 2014-12-04 2016-12-27 Cisco Technology, Inc. Inter-domain service function chaining
US20160173392A1 (en) * 2014-12-15 2016-06-16 Tieto Oyj Service Chain Management
US9584415B2 (en) * 2015-01-30 2017-02-28 Huawei Technologies Co., Ltd. Devices, systems and methods for service chains
WO2016130121A1 (en) * 2015-02-11 2016-08-18 Hewlett Packard Enterprise Development Lp Network service chain construction
US9736063B2 (en) * 2015-02-17 2017-08-15 Huawei Technologies Co., Ltd. Service chaining using source routing
US10594743B2 (en) 2015-04-03 2020-03-17 Nicira, Inc. Method, apparatus, and system for implementing a content switch
US9853898B1 (en) * 2015-04-29 2017-12-26 Juniper Networks, Inc. Dynamic service chain provisioning
US9762402B2 (en) 2015-05-20 2017-09-12 Cisco Technology, Inc. System and method to facilitate the assignment of service functions for service chains in a network environment
US10103976B2 (en) 2015-07-09 2018-10-16 Cisco Technology, Inc. Service bitmask-based service application in service function chaining
US9723106B2 (en) 2015-08-28 2017-08-01 Cisco Technology, Inc. Service function chaining branching
US11044203B2 (en) 2016-01-19 2021-06-22 Cisco Technology, Inc. System and method for hosting mobile packet core and value-added services using a software defined network and service chains
US10164875B2 (en) * 2016-02-22 2018-12-25 Cisco Technology, Inc. SR app-segment integration with service function chaining (SFC) header metadata
CN105978806B (zh) * 2016-03-11 2019-03-26 北京星网锐捷网络技术有限公司 一种服务链引流方法和装置
CN105912266A (zh) * 2016-04-05 2016-08-31 浪潮电子信息产业股份有限公司 一种刀片服务器及一种刀片服务器的融合存储的方法
US10498765B2 (en) * 2016-06-01 2019-12-03 At&T Intellectual Property I, L.P. Virtual infrastructure perimeter regulator
US10079767B2 (en) 2016-06-13 2018-09-18 Cisco Technology, Inc. Multi-mobile core networks and value-added services
CN106169980A (zh) * 2016-06-29 2016-11-30 国家计算机网络与信息安全管理中心 一种虚拟网络带宽公平调度方法
US10158565B2 (en) * 2016-08-26 2018-12-18 Cisco Technology, Inc. Network services across non-contiguous subnets of a label switched network separated by a non-label switched network
US11277338B2 (en) * 2016-09-26 2022-03-15 Juniper Networks, Inc. Distributing service function chain data and service function instance data in a network
US10250500B2 (en) * 2016-12-30 2019-04-02 Juniper Networks, Inc. Performing a service on a packet
US10797966B2 (en) 2017-10-29 2020-10-06 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
US10659252B2 (en) 2018-01-26 2020-05-19 Nicira, Inc Specifying and utilizing paths through a network
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
US10728174B2 (en) 2018-03-27 2020-07-28 Nicira, Inc. Incorporating layer 2 service between two interfaces of gateway device
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
CN110971522B (zh) 2018-09-30 2021-09-17 华为技术有限公司 一种确定路由泄露的方法、设备和系统
CN111200549B (zh) * 2018-11-16 2021-04-20 华为技术有限公司 一种获取路由信息的方法及装置
JP7081521B2 (ja) * 2019-02-06 2022-06-07 日本電信電話株式会社 通信システムおよび通信方法
US11288088B2 (en) 2019-02-22 2022-03-29 Vmware, Inc. Service control plane messaging in service data plane
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
US11792112B2 (en) 2020-04-06 2023-10-17 Vmware, Inc. Using service planes to perform services at the edge of a network
WO2021211949A1 (en) * 2020-04-16 2021-10-21 Juniper Networks, Inc. Tenant-based mapping for virtual routing and forwarding
CN114363183A (zh) * 2020-09-30 2022-04-15 中兴通讯股份有限公司 一种业务链地址池切片处理方法、装置及系统
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
US20220247663A1 (en) * 2021-02-04 2022-08-04 Nokia Solutions And Networks Oy Service differentiation based on constrained network topology slicing

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1414753A (zh) * 2002-08-05 2003-04-30 华为技术有限公司 基于多协议标签交换虚拟私有网络网关的组网方法
JP2007067505A (ja) * 2005-08-29 2007-03-15 Nippon Telegr & Teleph Corp <Ntt> エッジノードおよびコアノード
CN102195855A (zh) * 2010-03-17 2011-09-21 华为技术有限公司 一种业务路由方法和业务网络

Family Cites Families (41)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020150094A1 (en) * 2000-10-27 2002-10-17 Matthew Cheng Hierarchical level-based internet protocol multicasting
US20030128668A1 (en) * 2002-01-04 2003-07-10 Yavatkar Rajendra S. Distributed implementation of control protocols in routers and switches
US7245640B2 (en) * 2002-12-18 2007-07-17 Intel Corporation Packet origination
US9137033B2 (en) * 2003-03-18 2015-09-15 Dynamic Network Services, Inc. Methods and systems for monitoring network routing
US20050289244A1 (en) * 2004-06-28 2005-12-29 Himansu Sahu Method for service chaining in a communication network
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
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)
US7558261B2 (en) 2004-10-28 2009-07-07 Cisco Technology, Inc. Architecture and method for accessing services in a data center
US7643468B1 (en) 2004-10-28 2010-01-05 Cisco Technology, Inc. Data-center network architecture
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
US7616574B2 (en) * 2005-03-15 2009-11-10 Cisco Technology, Inc. Dynamic retrieval of routing information for inter-AS TE-LSPs
US20060291446A1 (en) * 2005-06-24 2006-12-28 Donald Caldwell Systems, methods, and devices for managing routing
US7554996B2 (en) * 2005-09-14 2009-06-30 Cisco Technology, Inc. Controlled distribution of inter-area routing information
US9015299B1 (en) * 2006-01-20 2015-04-21 Cisco Technology, Inc. Link grouping for route optimization
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
US9432213B2 (en) * 2007-12-31 2016-08-30 Rpx Clearinghouse Llc IP forwarding across a link state protocol controlled ethernet network
FR2934450A1 (fr) * 2008-07-23 2010-01-29 France Telecom Distribution de routes dans un reseau de routeurs.
US7916729B2 (en) * 2008-09-30 2011-03-29 Cisco Technology, Inc. Automatic RD rewrite technique to achieve fast convergence in inter-as networks
US8442043B2 (en) 2008-12-29 2013-05-14 Cisco Technology, Inc. Service selection mechanism in service insertion architecture data plane
EP2249525B1 (en) * 2009-05-06 2012-10-31 Alcatel Lucent Traffic-engineered connection establishment across resource domains for data transport
US20120224536A1 (en) * 2009-11-10 2012-09-06 Nokia Siemens Networks Oy Network device in a communication network and method for providing communications traffic breakout
EP2537299B1 (fr) * 2010-02-16 2022-03-23 Transpacific IP Group Limited Gestion de reseaux prives virtuels
US8504718B2 (en) * 2010-04-28 2013-08-06 Futurewei Technologies, Inc. System and method for a context layer switch
CN102143199A (zh) * 2010-10-19 2011-08-03 华为技术有限公司 获取内容的方法、节点及内容网络
US8700801B2 (en) * 2010-12-01 2014-04-15 Juniper Networks, Inc. Dynamically generating application-layer traffic optimization protocol maps
US8806032B2 (en) * 2010-12-15 2014-08-12 At&T Intellectual Property I, L.P. Methods and apparatus to migrate border gateway protocol sessions between routers
US8954491B1 (en) * 2010-12-30 2015-02-10 Juniper Networks, Inc. Dynamically generating application-layer traffic optimization protocol endpoint attributes
US8559414B2 (en) * 2011-02-19 2013-10-15 Cisco Technology, Inc. Automatically detecting best paths from shadow route reflectors
US8824471B2 (en) * 2011-06-01 2014-09-02 Cisco Technology, Inc. Maintained message delivery during routing domain migration
US20130028140A1 (en) * 2011-07-28 2013-01-31 Cisco Technology, Inc. Using service discovery to build routing topologies
US9491686B2 (en) * 2011-07-28 2016-11-08 Pulse Secure, Llc Virtual private networking with mobile communication continuity
US20140376371A1 (en) * 2012-01-02 2014-12-25 Nokia Solutions And Networks Oy Method and Device for Conveying Data Across at Least Two Domains
US9106555B2 (en) * 2012-01-25 2015-08-11 Cisco Technology, Inc. Troubleshooting routing topology based on a reference topology
US8891450B2 (en) * 2012-02-06 2014-11-18 Juniper Networks, Inc. Mobile node host route installation and withdrawal
US20130219046A1 (en) * 2012-02-21 2013-08-22 Cisco Technology, Inc. Dynamic application-aware routing topologies
US10097452B2 (en) * 2012-04-16 2018-10-09 Telefonaktiebolaget Lm Ericsson (Publ) Chaining of inline services using software defined networking
US9210180B2 (en) * 2012-04-18 2015-12-08 Radware Ltd. Techniques for separating the processing of clients' traffic to different zones in software defined networks
US9660905B2 (en) * 2013-04-12 2017-05-23 Futurewei Technologies, Inc. Service chain policy for distributed gateways in virtual overlay networks

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1414753A (zh) * 2002-08-05 2003-04-30 华为技术有限公司 基于多协议标签交换虚拟私有网络网关的组网方法
JP2007067505A (ja) * 2005-08-29 2007-03-15 Nippon Telegr & Teleph Corp <Ntt> エッジノードおよびコアノード
CN102195855A (zh) * 2010-03-17 2011-09-21 华为技术有限公司 一种业务路由方法和业务网络

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Virtual Topologies for Service Chaining in BGP IP VPNs;R. Fernando, etc.;《draft-rfernando-l3vpn-service-chaining-01.txt》;20130226;第1至6章节、图1 *

Also Published As

Publication number Publication date
EP3000206A1 (en) 2016-03-30
EP3000206B1 (en) 2018-07-11
US20140351452A1 (en) 2014-11-27
US9826025B2 (en) 2017-11-21
WO2014189670A1 (en) 2014-11-27
CN105247822A (zh) 2016-01-13
US10270843B2 (en) 2019-04-23
US20180013821A1 (en) 2018-01-11

Similar Documents

Publication Publication Date Title
CN105247822B (zh) 一种用于建立网络服务链的方法、装置及计算机可读存储介质
EP3824602B1 (en) Multi-cloud connectivity using srv6 and bgp
US10700891B2 (en) Method for implementing service chain, device, and system
US9853898B1 (en) Dynamic service chain provisioning
US9634936B2 (en) Service chaining across multiple networks
KR101473783B1 (ko) 터널링을 이용한 다이나믹 서비스 체이닝 제어 방법 및 장치
US10298712B2 (en) Proxy interception
EP3624429B1 (en) Reducing arp/nd flooding in cloud environment
US20150043348A1 (en) Traffic Flow Redirection between Border Routers using Routing Encapsulation
US20150363423A1 (en) Method and system for parallel data replication in a distributed file system
CN113261242A (zh) 使用可编程交换机进行覆盖网络路由
EP3151477B1 (en) Fast path content delivery over metro access networks
WO2016108140A1 (en) Ccn fragmentation gateway
WO2016174598A1 (en) Sdn network element affinity based data partition and flexible migration schemes
WO2018077304A1 (zh) 业务信息处理方法、装置及系统
CN110519163A (zh) 检测环网络中点对多点标签交换路径的出口
EP3151478B1 (en) Content caching in metro access networks
CN105323169A (zh) 多协议标签切换环
EP3996350A1 (en) Backup service function notification and synchronization

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20180918

CF01 Termination of patent right due to non-payment of annual fee