CN107005584A - 内联服务交换机 - Google Patents
内联服务交换机 Download PDFInfo
- Publication number
- CN107005584A CN107005584A CN201580057270.9A CN201580057270A CN107005584A CN 107005584 A CN107005584 A CN 107005584A CN 201580057270 A CN201580057270 A CN 201580057270A CN 107005584 A CN107005584 A CN 107005584A
- Authority
- CN
- China
- Prior art keywords
- service
- data
- message
- tunnel
- node
- 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.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
- H04L67/63—Routing a service request depending on the request content or context
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/54—Store-and-forward switching systems
- H04L12/56—Packet switching systems
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/60—Software-defined switches
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/70—Virtual switches
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/02—Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
- H04L63/0227—Filtering policies
- H04L63/0245—Filtering by information in the payload
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
-
- 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/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
-
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
-
- 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/12—Avoiding congestion; Recovering from congestion
- H04L47/125—Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/70—Admission control; Resource allocation
- H04L47/82—Miscellaneous aspects
- H04L47/825—Involving tunnels, e.g. MPLS
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/07—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail characterised by the inclusion of specific contents
- H04L51/18—Commands or executable codes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/51—Discovery or management thereof, e.g. service location protocol [SLP] or web services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W76/00—Connection management
- H04W76/10—Connection setup
- H04W76/12—Setup of transport tunnels
Abstract
一些实施例提供将数据消息从源计算节点(SCN)分发到目的地服务计算节点(DSCN)的不同组的新颖内联交换机。在一些实施例中,内联交换机部署在源计算节点数据路径(例如,出口数据路径)中。在一些实施例中,内联交换机是(1)从SCN接收数据消息、(2)基于交换机实现的服务策略来识别服务‑节点集群中用于处理数据消息的服务节点,以及(3)使用隧道向其识别出的服务节点发送接收到的数据消息的服务交换机。可替代地,或相结合地,一些实施例的内联服务交换机(1)基于交换机实现的服务策略来识别用于处理数据消息的服务‑节点集群,以及(2)使用隧道向识别出的服务‑节点集群发送接收到的数据消息。在一些实施例中,服务‑节点集群可以执行相同的服务或者可以执行不同的服务。这种用于将数据消息分发到服务节点/集群的基于隧道的方法对于在数据中心中无缝地实现基于云的XaaS模型(其中XaaS代表X即服务,并且X代表任何东西)是有利的,其中任何数量的服务由云中的服务提供商提供。
Description
背景技术
数据中心如今使用非常静态的、配置密集的方式在不同的应用层和不同的服务层之间分发数据消息。如今常见的方法是将虚拟机配置为向虚拟IP地址发送分组,然后利用转发规则配置数据中心中的转发元件和负载均衡器,其中转发规则指示它们向适当的应用和/或服务层转发寻址到VIP的分组。关于现有的消息分发方案的另一个问题是,如今的负载均衡器常常是分布式流量的阻塞点。因而,本领域需要在数据中心中不同的应用和/或服务层之间无缝地分发数据消息的新方法。理想情况下,这种新方法将允许在不重新配置发送数据消息的服务器的情况下容易地修改分发方案。
发明内容
一些实施例提供将数据消息从源计算节点(SCN)分发到目的地服务计算节点(DSCN)的不同组的新颖内联交换机。在一些实施例中,内联交换机部署在源计算节点数据路径(例如,出口数据路径)中。在一些实施例中,内联交换机是(1)从SCN接收数据消息、(2)基于交换机实现的服务策略来识别服务-节点集群中用于处理数据消息的服务节点,以及(3)使用隧道向其识别出的服务节点发送接收到的消息的服务交换机数据。
可替代地,或相结合地,一些实施例的内联服务交换机(1)基于交换机实现的服务策略来识别用于处理数据消息的服务-节点集群,以及(2)使用隧道向识别出的服务-节点集群发送接收到的数据消息。在一些实施例中,服务-节点集群可以执行相同的服务或者可以执行不同的服务。这种用于将数据消息分发到服务节点/集群的基于隧道的方法对于在数据中心中无缝地实现基于云的XaaS模型(其中XaaS代表X即服务,并且X代表任何东西)是有利的,其中任何数量的服务由云中的服务提供商提供。
在一些实施例中,内联服务交换机执行负载均衡操作,以在执行相同服务的若干服务节点或服务-节点集群之间分发数据消息。可替代地,或相结合地,一些实施例中的服务集群可以具有在服务集群的服务节点之间分发为集群接收的数据消息的一个或多个负载均衡器。
在一些实施例中,至少一个服务集群实现弹性模型,其中一个主服务节点从内联服务交换机接收集群的数据消息。这个服务节点然后或者自己对数据消息执行服务或者将数据消息(例如,通过L3和/或L4网络地址转换、通过MAC重新引导等)引导到集群中的其它服务节点之一(称为次服务节点),以对数据消息执行服务。在一些实施例中,主服务节点基于接收到的数据消息负载弹性收缩或增加集群中次服务节点的数量。
一些实施例提供了内联负载均衡交换机,其基于一个或多个L4+参数有状态地将服务负载分发到多个服务节点,这些参数是高于L1-L4参数的分组报头参数。L4+参数的示例包括会话密钥、会话cookie(例如,SSL会话标识符)、文件名、数据库服务器属性(例如,用户名)等。为了在服务器节点间有状态地分发服务负载,一些实施例中的内联负载均衡交换机与数据消息SCN和服务节点建立层4连接会话(例如,TCP/IP会话),使得交换机(1)可以监视为该会话交换的初始有效负载分组中的一个或多个,和(2)可以提取和存储L4+会话参数,以供在其后续的负载均衡操作中使用。
在一些实施例中,通过执行与SCN的三路TCP握手以及与服务节点的另一个三路TCP握手,内联交换机与SCN建立层4连接会话并与服务节点建立另一个会话。为了在SCN和服务节点之间中继数据消息,一些实施例中的内联交换机可以调整被中继的数据消息的序列号,以解决SCN与服务节点之间序列号的差异。
一些实施例提供了用于重新配置数据中心中的应用或服务层部署的控制器驱动的方法。在一些实施例中,一个或多个控制器为数据中心中的SCN定义数据消息分发策略,并将这些策略或基于这些策略的规则推送到SCN的内联交换机。然后,内联交换机将数据消息分发到由分发策略/规则识别作为用于数据消息的数据计算节点(DCN)的DCN。在一些实施例中,分发策略或规则是按照SCN用来寻址DCN组中的若干DCN的DCN组地址(例如,虚拟IP地址(VIP))来表示的。
这种控制器驱动的方法可以无缝地重新配置数据中心中的应用或服务层部署,而不必将SCN配置为使用新的DCN组地址(例如,新的VIP)。控制器集合只需要为内联交换机提供新的分发策略或规则,这些策略或规则基于先前配置的DCN组地址来指定新的流量分发模式。在一些实施例中,无缝重新配置可以基于由SCN使用的任意分组报头参数(例如,L2、L3、L4或L7参数)。换句话说,在一些情况下,这些分组报头参数不一定包括DCN组地址。在一些实施例中,内联交换机可以被配置为基于与分组相关联的元数据标签来分发数据消息,并且由应用级网关(ALG)注入到分组(例如,作为L7参数)中。例如,由于ALG被配置为在分组进入网络域(例如,逻辑域)时检查和标记分组,因此在一些实施例中控制器集合被配置为将新的分发策略和/或规则推送到内联交换机,以配置这些内联交换机在网络域中实现新的应用或服务层部署。
前面的发明内容旨在用作为对本发明的一些实施例的简要介绍。这不意味着是对本文档中公开的所有发明性主题的介绍或概述。以下的具体实施方式和在具体实施方式中提及的附图将进一步描述在本发明内容中描述的实施例以及其它实施例。相应地,为了理解由本文档描述的所有实施例,需要对发明内容、具体实施方式、附图和权利要求书进行全面审查。而且,所要求保护的主题不受发明内容、具体实施方式和附图中的说明性细节的限制。
附图说明
本发明的新颖特征在所附权利要求中阐述。但是,为了解释的目的,在以下图中阐述了本发明的若干实施例。
图1示出了具有内联服务交换机的多主机系统的示例。
图2概念性地示出了在一些实施例中内联服务交换机执行的过程。
图3示出了服务规则的不同示例。
图4概念性地示出了将数据消息流分发到一个服务节点集群中的服务节点。
图5概念性地示出了将数据消息流分发到执行相同服务的不同服务节点集群。
图6示出了顺序地调用不同集群的多个不同服务节点的ISS的示例。
图7示出了使用一个主服务节点和零个或多个次服务节点的弹性服务模型的示例。
图8示出了将数据消息从VM顺序地转发到不同的可弹性调整的服务集群的示例。
图9概念性地示出了在一些实施例中内联服务交换机执行的另一个过程。
图10概念性地示出了主服务节点在本发明的一些实施例中执行的过程。
图11示出了具有将服务负载有状态地分发到服务节点的内联服务交换机的多主机系统的示例。
图12概念性地示出了提取和重用会话参数的示例。
图13概念性地示出了提取和重用会话参数的另一个示例。
图14概念性地示出了用于从相关联的虚拟机以粘滞方式(sticky manner)处理服务请求的一些实施例的过程。
图15示出了主计算设备的更详细的体系架构。
图16示出了控制器重新配置应用层部署的示例。
图17示出了控制器重新配置应用层部署的另一个示例。
图18概念性地示出了定义用于内联交换机的服务策略规则的一些实施例的过程。
图19概念性地示出了用于修改服务规则并重新配置实现这个服务规则的内联服务交换机的一些实施例的过程。
图20概念性地示出了利用其实现本发明的一些实施例的电子系统。
具体实施方式
在本发明的以下详细描述中,阐述和描述本发明的众多细节、示例和实施例。但是,对本领域技术人员来说将清楚和显然的是,本发明不限于所阐述的实施例,并且本发明可以在没有所讨论的一些具体细节和示例的情况下实践。
一些实施例提供将数据消息从源计算节点(SCN)分发到目的地服务计算节点(DSCN)的不同组的新颖内联交换机。在一些实施例中,内联交换机部署在源计算节点数据路径(例如,出口数据路径)中。在一些实施例中,内联交换机是(1)从SCN接收数据消息、(2)基于交换机实现的服务策略来识别服务-节点集群中用于处理数据消息的服务节点,以及(3)使用隧道向其识别出的服务节点发送接收到的数据消息的服务交换机。
可替代地,或相结合地,一些实施例的内联服务交换机(1)基于交换机实现的服务策略来识别用于处理数据消息的服务-节点集群,以及(2)使用隧道向识别出的服务-节点集群发送接收到的数据消息。在一些实施例中,服务-节点集群可以执行相同的服务或者可以执行不同的服务。这种用于将数据消息分发到服务节点/集群的基于隧道的方法对于在数据中心中无缝地实现基于云的XaaS模型(其中XaaS代表X即服务,并且X代表任何东西)是有利的,其中任何数量的服务由云中的服务提供商提供。
隧道使用隧道报头将来自一种类型的协议的分组封装在不同协议的数据报中。例如,VPN(虚拟专用网络)隧道使用PPTP(点对点隧道协议)经诸如互联网的公共网络来封装IP(互联网协议)分组。GRE(通用路由封装)隧道使用GRE报头经IP网络在虚拟点对点链路内封装各种各样的网络层协议。换句话说,GRE隧道在外部IP分组中封装有效载荷。
如本文档中所使用的,云是指通过网络(例如,通过互联网)可访问的一个或多个数据中心中的计算机的一个或多个集合。在一些实施例中,XaaS模型由在相同数据中心或处于不同位置(例如,不同的邻域、城市、州、国家等)的不同数据中心中操作的一个或多个服务提供商来实现。
而且,如本文档中所使用的,数据消息是指跨网络发送的特定格式的位的集合。本领域普通技术人员将认识到,术语“数据消息”在本文中可以被用来指可以跨网络发送的各种格式化的位集合,诸如以太网帧、IP分组、TCP分段、UDP数据报等。而且,如本文档中所使用的,对L2、L3、L4和L7层的引用分别是对OSI(开放系统互连)层模型的第二数据链路层、第三网络层、第四传输层和第七应用层的引用。
在一些实施例中,内联服务交换机(ISS)执行负载均衡操作,以在执行相同服务的若干服务节点或服务节点集群之间分发数据消息。可替代地,或相结合地,一些实施例中的服务集群可以具有在服务集群的服务节点之间分发为集群接收的数据消息的一个或多个负载均衡器。
在一些实施例中,至少一个服务集群实现弹性模型,其中一个主服务节点从内联服务交换机接收集群的数据消息。这个服务节点然后或者自己对数据消息执行服务或者将数据消息(例如,通过L3和/或L4网络地址转换、通过MAC重新引导等)引导到集群中的其它服务节点之一(称为次服务节点),以对数据消息执行服务。在一些实施例中,主服务节点基于接收到的数据消息负载弹性收缩或增加集群中次服务节点的数量。
在一些实施例中,SCN可以是与充当SCN或目的地计算节点(DCN)的其它VM或容器一起在主机上执行的虚拟机(VM)或软件容器(诸如Docker容器)。在一些实施例中,DCN的示例包括生成或消费数据消息的计算端节点,或者在数据消息在数据计算端节点之间被中继时对这些消息执行某种类型的数据处理的中间件服务节点。数据计算端节点的示例包括web服务器、应用服务器、数据库服务器等,而中间件服务节点的示例包括防火墙、入侵检测系统、入侵防御系统等。
服务节点是独立设备或者是在主计算机上执行的DCN(例如,VM、容器或模块)。服务节点可以是数据计算端节点(例如,web服务器、应用服务器、数据库服务器等),或者可以是中间件服务节点(例如,防火墙、入侵检测系统、入侵防御系统等)。
在一些实施例中,内联服务交换机是在与SCN相同的主机上执行的另一个软件模块。在一些实施例中,主机上的两个或更多个SCN使用相同的内联服务交换机,而在其它实施例中,主机上的每个SCN具有在主机上执行的其自己的内联服务交换机。在一些实施例中,主机还执行软件转发元件(SFE)。SFE将主机的SCN彼此通信耦合并耦合到主机外部的其它设备(例如,其它SCN)。在一些实施例中,内联交换机被插入在SCN的出口路径中在SFE之前。
在一些实施例中,一个或多个控制器通过提供服务分发策略或通过提供基于服务分发策略定义的分发规则来配置内联服务交换机。这些控制器的一个示例是图1的ISS控制器120。这个图示出了具有一些实施例的内联服务交换机105的多主机系统100的示例。这个系统包括多个主机计算设备110、ISS控制器120的集合,一个或多个VM管理控制器125的集合,以及多个服务节点集群150。如图1中所示,主机110、ISS控制器集合120、VM管理器集合125以及服务节点集群150通过网络175通信地耦合,其中网络175可以包括局域网(LAN)、广域网(WAN)或网络的网络(例如,互联网)。
每个主机计算设备110(例如,计算机)执行一个或多个VM115、一个或多个SFE 130(例如,软件交换机、软件路由器等)、ISS代理135,以及一个或多个内联服务交换机105。在一些实施例中,VM包括SCN和DCN。在一些实施例中,主机上的SFE 130将主机的VM彼此通信地耦合并耦合到主机外部的设备(例如,耦合到其它主机的VM)。而且,在一些实施例中,主机的SFE与在其它主机上执行SFE一起实现一个或多个逻辑网络。SFE 130还将主机上的ISS105通信地耦合到一个或多个服务节点或一个或多个服务节点集群150。
在一些实施例中,每个ISS 105与其主机上的一个VM相关联,而在其它实施例中,一个ISS 105与其主机上的多于一个VM相关联(例如,与其主机上的作为一个逻辑网络的一部分的所有VM相关联)。对于由其相关联的VM发送的数据消息,ISS 105强制执行实现一个或多个服务策略的一个或多个服务规则。基于服务规则,ISS(1)确定所发送的数据消息是否应当由一个或多个服务节点或集群处理,(2)如果是,则选择服务节点或集群来处理数据消息,并通过隧道向选定的节点或集群转发数据消息。
每个ISS 105具有它用来确定如何将执行服务的负载分发给执行这个服务的一个或多个服务节点或一个或多个服务节点集群的负载均衡器160。在一些实施例中,ISS 105通过隧道连接到服务节点或集群。在其它实施例中,内联交换机通过隧道连接到一些服务节点/集群,而不使用隧道连接到其它服务节点/集群。在一些实施例中,服务节点处于与主机110和控制器120和125不同的数据中心中,而在其它实施例中,一个或多个服务节点与主机110和控制器120和125处于相同的数据中心中。在一些实施例中,一些服务节点是在主机110上执行的服务VM。
而且,在一些实施例中,不同的服务节点集群可以提供相同的服务或者可以提供不同的服务。例如,在图1中所示的示例中,服务节点集群150a和150b提供相同的服务(例如,防火墙服务),而服务节点集群150c提供不同的服务(例如,入侵检测)。将数据消息分发到同一数据中心或不同数据中心中的服务节点/集群的基于隧道的方法对于无缝地实现基于云的XaaS模型是有利的,其中任何数量的服务由云中的服务提供商提供。
这种基于隧道的XaaS模型体系架构允许私有数据中心中(例如,在企业数据中心中)的主机110和VM 115无缝地使用在一个或多个位置的一个或多个公共多租户数据中心中的一个或多个服务集群。私有数据中心通常通过诸如互联网的公共网络连接到公共数据中心。云服务提供商的示例包括:防火墙服务提供商、电子邮件垃圾邮件服务提供商、入侵检测服务提供商、数据压缩服务提供商等。一个提供商可以提供多种云服务(例如,防火墙、入侵检测等),而另一个提供者只能提供一种服务(例如,数据压缩)。
在一些实施例中,用于VM的ISS部署在VM的出口数据路径中。例如,在一些实施例中,每个VM具有连接到SFE的端口的虚拟网络接口卡(VNIC)。在这些实施例中的一些当中,用于VM的内联交换机由VM的VNIC或由VM的VNIC连接到的SFE端口来调用。在一些实施例中,VM在管理程序之上执行,其中管理程序是启用主机的共享硬件资源的虚拟化的软件层。在这些实施例中的一些当中,管理程序提供向其VM提供内联切换和负载均衡服务的内联交换机。
在多个主机上执行的多个内联服务交换机可以实现分布式服务交换机。在分布式服务交换机中,来自多个不同主机上的一组相关VM的数据消息根据相同的服务分发策略被分发给一个或多个服务节点或集群。这些数据消息是根据相同的服务分配策略进行分发的,因为用于SCN组的各个内联服务交换机配置有相同的策略或规则。
VM管理控制器125提供用于定义(例如,分配或实例化)和管理每个主机上的一个或多个VM的控制和管理功能。ISS控制器集合120通过ISS代理135配置内联交换机105及其相关联的负载均衡器160。在一些实施例中,这两个控制器集合120和125之一提供用于定义和管理在主机的公共SFE物理基础设施上定义的多个逻辑网络的控制和管理功能。在一些实施例中,控制器120和125通过带外控制信道通信与在主机上执行的代理进行通信。在一些实施例中,控制器120和125是独立服务器,或者是与其它服务器一起在主机上执行的服务器。
在一些实施例中,ISS控制器集合120向ISS代理提供ISS代理将其转换成用于内联交换机实现的服务规则的高级服务策略。这些服务策略和规则包括内联交换机的负载均衡器实现的负载均衡策略和规则。在一些实施例中,ISS控制器集合向ISS代理提供代理一直传递到内联交换机和负载均衡器的服务规则。在还有其它实施例中,ISS控制器集合向ISS代理既提供服务策略又提供服务规则。在这些实施例中,ISS代理将服务策略转换为服务规则,然后它将接收并转换的服务规则提供给内联交换机和负载均衡器。在还有其它实施例中,ISS控制器集合直接配置内联交换机和负载均衡器,而不经过ISS代理。
在一些实施例中,ISS控制器集合还向ISS代理135、服务交换机105或其负载均衡器160提供负载均衡器用来执行其负载均衡操作的负载均衡标准。例如,负载均衡标准包括指定负载均衡器应当如何以加权轮询(round robin)方法在服务节点集合中分发数据消息负载的权重值集合。在一些实施例中,ISS控制器集合120分发数据-消息负载统计信息,并且服务代理135、ISS 105或负载均衡器160基于这些统计信息生成负载均衡标准。
更具体而言,在一些实施例中,ISS控制器集合120采集来自内联交换机的统计信息,并且基于所采集的统计信息,动态地调整其直接或间接(通过ISS代理)分发到内联交换机和负载均衡器的服务策略、服务规则和/或负载均衡标准。在一些实施例中,每个内联交换机在数据储存装置(以下称为STAT储存装置)中存储它在其主机上更新的关于其数据消息分发的统计信息。ISS代理135周期性地从STAT数据储存装置(图1中未示出)采集所收集的统计信息,并将这些统计信息中继到ISS控制器集合120。在一些实施例中,代理135聚合和/或分析一些统计信息,然后将处理后的统计信息中继到ISS控制器集合120,而在其它实施例中,代理将所收集的原始统计信息中继到ISS控制器集合120。
一些实施例的ISS控制器集合120聚合它从主机的代理接收的统计信息。在一些实施例中,ISS控制器集合120然后将聚合的统计信息分发给在主机上执行的代理。然后,这些代理分析聚合的统计信息,以生成和/或调整其相关联的内联交换机或其负载均衡器强制执行的规则或标准。在其它实施例中,控制器集合分析聚合的统计信息,以生成和/或调整服务策略、服务规则和/或LB标准,然后控制器集合将其分发给主机的代理135,用于让其内联交换机和负载均衡器强制执行。
在这些实施例的一些当中,控制器集合将相同的策略、规则和/或标准分发给一组相关联的ISS中的每个ISS,而在其它实施例中,控制器集合将不同的策略、规则和/或标准分发给一组相关联的ISS中的不同ISS。在一些实施例中,控制器集合将更新的策略、规则和/或标准分发给相关联的交换机组中的一些内联交换机,而不将更新的策略、规则和/或标准分发给该相关联的组中的其它内联交换机。在一些实施例中,控制器集合基于聚合的统计信息更新和分发一些策略、规则或标准,同时还将一些或所有聚合的统计信息分发给主机,使得其代理可以生成其它规则或标准。本领域普通技术人员将认识到,在一些实施例中,策略、规则和/或标准不总是基于聚合的统计信息来调整,而是仅在聚合的统计信息需要这种修改时才被修改。
不考虑对于更新策略、规则和/或标准的实现,数据流量统计信息的收集和聚合允许动态地调整切换规则或标准。例如,当统计信息显示一个服务节点太过充满数据流量时,可以为向这个服务节点发送数据消息的负载均衡器动态调整负载均衡规则或标准,以便减少在这个服务节点上的负载,同时增加同一服务节点集群中的一个或多个其它服务节点上的负载。在一些实施例中,数据流量统计信息的收集和聚合还允许控制器集合120通过动态地指示服务-节点管理控制器集合(未示出)向服务集群供应(一个或多个)新的服务节点或分配(一个或多个)以前供应的服务节点来减小服务-节点集群中的任何服务节点上的负载。
图2示出了VM 115的ISS 105针对VM发送的数据消息执行的过程200。在执行这个过程中,ISS 105(1)确定数据消息是否应当由一个或多个服务节点或集群处理,以及(2)如果是,则选择服务节点或集群来处理数据消息并将数据消息通过隧道转发到选定的节点或集群。为了选择服务节点或服务-节点集群,ISSS执行负载均衡操作,以确保它处理的数据消息流基于负载均衡标准的集合在若干服务节点或集群之间被分发。以下将参考图3-5来描述过程200。图3是在一些实施例中由过程200强制执行的服务规则的不同示例。图4和5分别示出了ISS 105向一个服务节点集群310中的服务节点305分发数据消息流,并且向执行相同服务的不同服务节点集群405分发数据消息流。
当ISS 105接收到其相关联的VM发送的数据消息时,过程200开始。如上面所提到的,ISS 105部署在VM的出口数据路径中,使得它可以截取由其VM发送的数据消息。在一些实施例中,ISS 105由VM的VNIC或由通信连接到VM的VNIC的SFE端口调用。
在210,该过程确定数据消息是否是该过程已经为其处理其它数据消息的数据消息流的一部分。在一些实施例中,该过程通过检查ISS维护的连接储存装置以跟踪其最近处理的数据消息流来做出这种确定。当两个数据消息共享相同的消息报头时,它们是同一个流的一部分。例如,当两个分组具有相同的五元组标识符时,它们是同一个流的一部分,五元组标识符包括源IP地址、目的IP地址、源端口、目标端口和协议。
如下面参考255进一步描述的,连接储存装置为ISS最近处理的每个数据消息流存储一个记录。这个记录存储必须应用到流的数据消息的服务规则集合的描述,或者具有对这种描述的引用(例如,指针)。在一些实施例中,当服务规则集合的操作需要丢弃数据消息时,连接-储存装置记录也指定这个动作,或者代替服务规则描述而指定这个动作。而且,当不需要对这个流的数据消息执行服务时,连接-储存装置记录指示ISS应当允许接收到的数据消息沿着VM的出口数据路径传递。
在一些实施例中,这个记录存储流的标识符(例如,五元组标识符)。此外,在一些实施例中,连接储存装置是可散列寻址的(例如,基于流的标识符的散列来识别连接储存装置中的位置)。当过程确定(在210)它已经先前处理了来自与接收到的数据消息相同的流中的数据消息时,它变换到215,在那里它执行先前在用于这个流的连接-储存装置记录中为这个流的数据消息指定的动作或服务-规则集合。在执行这些服务操作之后,过程200向调用它的模块(例如,SFE端口或VNIC)提供(在215)数据消息,假设服务操作不需要数据消息被丢弃,在这种情况下该过程这样通知调用的模块。通常,由于(一个或多个)服务操作被执行,因此过程200返回到调用模块的数据消息是在205接收的数据消息的修改版本。经修改的数据消息可以具有与接收到的数据消息不同的报头值和/或数据报(即,有效负载)。在一些情况下,返回的数据消息可能与接收到的数据消息完全相同。在215之后,过程结束。
当过程确定(在210)它先前没有处理来自相同数据消息流的数据消息时,该过程确定(在220)其强制执行的服务规则是否需要对接收到的数据消息执行一个或多个服务动作。在一些实施例中,ISS具有存储ISS强制执行的若干服务规则的服务规则储存装置。每个服务规则可以与来自内联交换机的VM的一个或多个数据消息流相关联,并且不同的服务规则可以与来自这个VM的不同数据消息流相关联。在一些实施例中,服务规则储存装置中的每个服务规则具有(1)相关联的数据消息标识符(例如,分组报头值)的集合和(2)一个或多个动作的集合。
过程200确定(在220)接收到的数据消息的标识符(例如,五元组)是否与其服务规则储存装置中的任何服务规则的数据消息标识符匹配。当数据消息匹配多于一个服务规则时,一些实施例的过程200仅执行由最高优先级匹配服务规则指定的动作集合。在一些这样的实施例中,服务规则储存装置根据基于其优先级的排序(sort)来存储规则,使得,当多于一个规则与数据消息匹配时,过程200首先将数据消息与较高优先级规则匹配,然后才能够将其与较低优先级的规则匹配。
当接收到的数据消息的报头值与服务规则储存装置中指定服务动作的任何服务规则的规则匹配标识符都不匹配时,过程200确定它不需要将数据消息转发到任何服务节点,以执行任何服务操作。由此,它在连接储存装置中创建(在222)记录,以指定对于作为与接收到的数据消息同一个流的一部分的数据消息不需要服务动作。对于本发明的一些实施例,连接储存装置的结构已在上面描述并在下面进一步描述。在222,该过程还通知调用它的模块(例如,SFE端口或VM VNIC)该过程已经完成处理数据消息。在一些实施例中,这个通知不附带数据消息,而在其它实施例中,这个通知附带数据消息。在发送这个通知时,过程200允许接收到的数据消息通过,而不对其执行任何服务。在222之后,过程结束。
当接收到的数据消息的标识符与服务规则储存装置中的一个或多个服务规则的规则匹配标识符匹配时,过程执行225-250,以处理匹配一个或多个服务规则的动作。在一些实施例中,每个服务规则只能指定一个动作,而在其它实施例中,服务规则可以指定一个或多个动作的序列。在一些实施例中的服务动作需要将匹配的数据消息转发到服务节点或集群。对于这种操作,服务规则直接或通过(规则所参考的)另一个记录来识别用于执行服务的一组服务集群的集群或服务节点集群的服务节点。如下面进一步描述的,过程200选择识别出的服务节点或集群中的一个。
图3示出了指定服务动作的服务规则的若干示例。这个图示出了存储多个服务规则的服务规则储存装置300。每个服务规则具有按照一个或多个数据消息报头值(例如,如上所述的一个或多个五元组值)表示的相关联的服务规则标识符集合305。过程200将服务规则标识符集合与数据消息的报头值进行比较,以便确定服务规则是否与接收到的数据消息匹配。
每个服务规则还指定一个或多个动作,每个动作按照动作类型310(例如,防火墙动作类型、IPS动作类型、IDS动作类型等)和隧道ID集合315来指定。在一些实施例中,服务规则的每个动作的隧道ID集合识别(1)ISS与集群中的一个或多个服务节点之间的一个或多个隧道,或者(2)服务集群组中提供服务的一个或多个服务集群。在一些实施例中,将服务规则的隧道ID集合作为由ISS控制器集合最初提供的数据的一部分(例如,为了配置ISS)提供,或者在由控制器集合提供的后续更新中提供。
当服务规则指定多于一个动作时,动作可以与多于一个服务相关联。以这种方式,服务规则可以指定需要对匹配的数据消息执行的服务操作序列。如上面所提到的,一些实施例根据基于规则优先级的排序将服务规则存储在数据储存装置300中,因为这些实施例中的过程200将数据消息与仅一个服务规则匹配,并且排序的次序允许过程将数据消息与匹配的较高优先级规则而不是匹配的较低优先级规则匹配。
在图3所示的示例中,服务规则350具有一个相关联的动作,而服务规则355具有多个相关联的动作。在其它实施例中,每个服务规则只能指定一个服务动作。而且,在其它实施例中,服务规则不直接识别用于服务节点或集群的隧道ID。例如,在一些实施例中,过程200通过使用服务-节点标识符或服务-集群标识符从识别这些ID的表中检索隧道ID来识别隧道ID。
在225,该过程选择与接收到的数据消息报头值匹配的服务规则的服务动作。当匹配的服务规则指定两个或更多个服务动作的序列时,过程200维护识别其在其必须执行的动作序列中的位置的记录(例如,计数),以便当其返回到225时将知道它必须选择的序列中的下一个服务动作是哪个。这将在下面进一步描述。
在一些实施例中,这个服务动作具有相关联的隧道ID集合315,其指定执行服务动作的一个或多个服务节点或服务节点集群的一个或多个隧道。因而,在230,过程200使用ISS的负载均衡器以负载均衡的方式从由隧道ID集合识别的服务节点或者服务-节点集群的集合中为数据消息选择一个业务节点或一个服务节点集群。在一些实施例中,ISS负载均衡器以有状态的方式分发负载,使得作为同一流的一部分的数据消息由相同的服务节点或相同的服务节点集群来处理。
为了以负载均衡的方式选择服务节点或服务-节点集群,一些实施例中的每个服务规则为规则的每个指定的隧道ID集合指定权重值的集合(未示出)。可替代地,在其它实施例中,每个服务规则参考识别针对为该规则识别的每个隧道ID集合的权重值集合的另一个记录。每个权重值集合指定用于相关联的隧道ID集合中每个隧道ID的权重值,并为ISS负载均衡器提供负载均衡标准,以将流量散布到由隧道ID集合识别的服务节点或集群。
例如,在一些实施例中,ISS负载均衡器使用这些权重值来实现加权轮询方案,以将流量散布到节点或集群。作为一个示例,假设隧道ID集合具有五个隧道ID,并且用于隧道ID的权重值为1、3、1、3和2。基于这些值,ISS负载均衡器将如下分发作为十个新流的部分的数据消息:1针对第一隧道ID,3针对第二隧道ID,1针对第三隧道ID,3针对第四隧道ID,2针对第五隧道ID。如下面进一步描述的,在一些实施例中,基于控制器集合从内联交换机收集的统计信息,由ISS代理135和/或ISS控制器集合120生成并调整用于服务规则的权重值。为了在不同的负载均衡标准之间从容地切换,隧道ID集合可以具有多个权重值集合,并且在一些实施例中,服务规则可以指定不同的时间段,在这些时间段期间,隧道ID集合的不同权重值(即,不同的负载均衡标准)有效。
在选择(230)用于数据消息的服务节点或服务-节点集群之后,过程(在235)识别隧道密钥,利用用于到选定的服务节点或服务-节点集群的隧道的(包括识别出的隧道密钥的)隧道报头封装数据消息,并将这个隧道-报头封装的数据消息提供给其主机的SFE,用以转发到选定的服务节点或服务-节点集群。这种隧道和密钥的示例是GRE隧道、Geneve隧道、GRE密钥、Geneve密钥等。如下面进一步描述的,一些实施例的内联交换机还使用其它重新引导机制(诸如MAC重新引导、目的地网络地址转换等)将数据消息转发到一些服务节点和服务-节点集群。
隧道密钥(例如,GRE密钥)允许多个数据消息流共享相同的隧道。对于每个数据消息流,在一些实施例中,该过程使用一个GRE密钥将流的数据消息发送到在隧道另一端的服务节点或集群,并且响应于从这个节点或集群发送的数据消息而接收响应性数据消息。对于来自服务节点或集群的数据消息,隧道密钥还允许过程200将数据消息与该过程发送到服务节点或集群的数据消息相关联。
图4给出了示出在同一主机或不同主机上执行的若干相关VM115的内联服务交换机105的示例,其中交换机105使用若干隧道450将其VM数据消息分发到服务节点集群410的对这些消息上执行相同服务(例如,防火墙服务或IPS服务)的多个服务节点405。ISS执行负载均衡操作,以便为每个数据消息流选择服务节点。
在图4中,每个隧道在集群中的ISS 105和服务节点405之间建立。对于共享到同一服务节点的相同隧道的不同流的数据消息,ISS105使用不同的隧道密钥,使得不同的流可以共享相同的隧道。而且,通过每个服务-节点隧道,ISS响应于它发送到服务节点的数据消息而接收数据消息,并且使用隧道密钥将每个响应数据消息与其发送的数据消息相关联。
在一些实施例中,每个服务节点405是独立设备。在其它实施例中,一个或多个服务节点405是在主计算机上执行的服务器。对于这种服务节点,在一些实施例中,隧道405是为服务节点在其上执行的主计算机或者主计算机的SFE供应的隧道。在一些实施例中,在内联交换机侧,隧道也可以在主机级提供。换句话说,在一些实施例中,在相同主计算机上执行的两个或更多个内联交换机105使用到服务节点的相同隧道。
图5给出了示出在相同主机或不同主机上执行的若干相关VM115的内联服务交换机105的示例,其中交换机105使用若干隧道550将其VM数据消息分发到对这些消息执行相同服务(例如,防火墙服务或IPS服务)的多个服务节点集群505。在这个示例中,ISS执行负载均衡操作,以便为每个数据消息流选择服务集群。如在图4的示例中,不同的隧道密钥被用来识别在图5的示例中共享相同隧道的不同流的数据消息。
在图5所示的示例中,每个服务集群505具有执行相同服务的多个服务节点510,以及将接收到的数据消息分发到其集群的服务节点的负载-均衡web服务器集合515(具有一个或多个web服务器)。在这个示例中,每个隧道在ISS 105和集群的负载-均衡web服务器515之间建立。通过其负载均衡操作230,ISS选择图5的集群组中的一个集群,以便将服务负载分发给执行相同服务的不同集群。然后,每个集群的负载-均衡web服务器515具有在集群的服务节点之间分发每个集群的负载的任务。在一些实施例中,这些web服务器以有状态的方式分发负载,使得集群中的相同服务节点处理作为同一流的一部分的数据消息。
在一些实施例中,图5中所示的服务集群组的不同服务集群在位于不同位置的不同数据中心中。在不同位置具有执行相同服务的不同服务集群会是有利的,因为它允许在不同位置的不同ISS将其服务集群选择偏向于更靠近该ISS位置的服务集群。而且,让不同服务集群执行相同的服务动作还为数据中心中的不同租户提供了为同一服务挑选不同服务提供商以及容易地在这些提供商之间进行切换而无需重新配置内联交换机或其服务器(例如,他们的VM或容器)的能力。在其它实施例中,这些服务集群505中的一个或多个处于相同的数据中心中。当不同的服务提供商在一个数据中心中提供相同的服务时,可能创建这种服务集群。
而且,在一些实施例中,图5中所示的体系架构还被用来在向执行相同服务或不同服务的一个或多个服务节点分发它们从内联交换机105接收的数据消息的非服务节点元件上(例如,在负载均衡器(诸如负载均衡器515)上)终止隧道。在一种这样的方法中,一个服务提供商的服务节点515可以在不同的集群505中。而且,在这种方法中,每个服务集群可以仅具有一个服务节点。鉴于上述,本领域普通技术人员将认识到的是,内联交换机用来向服务节点转发数据消息的隧道不一定必须在服务节点终止(即,不一定必须被供应),而是可以在通过隧道向服务节点转发其接收的数据消息的机器或设备终止。
在向服务节点或集群发送(235)数据消息之后一段时间,过程通过被用来在235发送数据消息的隧道从服务节点或集群接收(在240)服务完成确认。确认是从服务节点或集群接收并且被具有隧道密钥的隧道报头封装的一个或多个数据消息的一部分。隧道密钥允许过程200将接收到的(一个或多个)数据消息与所发送的数据消息(即,在235发送的数据消息)相关联。
接收到的确认可能指示数据消息应当被丢弃(例如,当服务节点执行确定数据消息应当被丢弃的安全服务操作(例如,防火墙、IPS、IDS等)时)。可替代地,(一个或多个)确认数据消息可能返回具有一个或多个经修改的数据消息报头的数据消息。一旦过程200完成其对数据消息的处理,这些经修改的报头值就可以将数据消息重新定向到不同的目的地。
而且,一些实施例中的(一个或多个)确认数据消息可能返回新的或经修改的有效载荷,以替换在235被发送到服务节点或集群的数据消息的有效载荷。例如,当服务节点或集群执行加密或压缩操作时,新的有效载荷可能是已发送的数据消息的有效载荷的加密或压缩版本。当返回的(一个或多个)数据消息为所发送的数据消息提供新的或经修改的有效载荷时,过程200在让另一个服务节点或集群对数据消息执行另一个服务之前或者在让SFE向其最终目的地转发数据消息之前将所发送的数据消息有效载荷用接收到的新的或经修改的有效载荷替换。
在接收(在240)服务完成确认之后,过程200确定(在245)是否应当继续处理数据消息。当接收到的确认指示数据消息应当被丢弃时,过程200变换到255,在那里它在ISS连接储存装置中创建记录,以指定作为同一流的一部分的数据消息(如在205接收的数据消息)应当被丢弃。创建这个记录,使得对于作为同一流的一部分的后续数据消息,该过程不必在确定它应当丢弃数据消息之前搜索服务规则数据储存装置并执行服务操作。在255,过程200还更新它在ISS STAT储存装置中维护的统计信息,以反映在数据消息被丢弃之前处理这个数据消息的(一个或多个)服务节点的当前数据消息的处理。
可替代地,当过程确定(在245)应当继续处理数据消息时,它确定(在250)其在220的服务规则检查是否识别出必须执行当前数据消息的任何其它服务动作。如上面所提到的,在一些实施例中,该过程可以识别具有必须对数据消息执行的多个服务动作的多个匹配服务规则。在其它实施例中,该过程只能识别对数据消息的一个匹配的服务规则。但是,在一些实施例中,匹配服务规则可能指定必须对数据消息执行的多个服务动作。
因而,当过程确定(在250)需要对数据消息执行另一个服务动作时,它返回到225,以选择另一个服务动作并重复操作230-250。当匹配的服务规则指定两个或更多个服务动作的序列时,过程200维护识别其在其必须执行的动作序列中的位置的记录(例如,计数),以便当其返回到225时将知道它必须在序列中选择的下一个服务动作是哪一个。换句话说,这个记录维护该过程处于它必须为接收到的数据消息实现的服务策略链中什么位置的状态。
图6示出了顺序调用执行不同服务的不同集群的多个不同服务节点的ISS以便实现涉及多个不同的个体服务策略的复杂服务策略的示例。这个图示出了VM 115的ISS 105顺序地使用X个不同服务集群610的X个服务节点605执行涉及X个个体服务动作的复杂服务策略,其中X是整数。如图所示,ISS使用不同的隧道650向X个服务节点发送数据消息。图6以实线示出了被用来处理数据消息的隧道,同时以虚线示出了ISS 105不选择的其它候选隧道。隧道的使用允许一些或所有的集群在云中。换句话说,隧道允许ISS无缝地实现基于云的XaaS模型。
在一些实施例中,不同的服务集群610可以彼此位于相同的数据中心中,或者位于不同的数据中心中。而且,服务集群610可以位于与VM 115和ISS 105相同的数据中心中,或者它可以位于不同的数据中心中。VM 115位于私有数据中心中(例如,在企业数据中心中),而一个或多个服务集群位于处于不同位置的公共多租户数据中心中。如上面所提到的,用于向相同数据中心或不同数据中心中的服务节点/集群分发数据消息的基于隧道的方法对于无缝地实现基于云的XaaS模型是有利的,其中任何数量的服务由云中的服务提供商提供。
在一些实施例中,当内联交换机105顺序地调用多个服务节点或集群以对交换机已经接收到的数据消息执行多个服务动作时,内联交换机向每个服务节点或集群发送与当过程200开始时内联服务交换机最初接收到的数据消息完全相同或者与内联服务交换机从对内联服务交换机发送到前一服务节点的数据消息执行前一服务动作的该前一服务节点接收的数据消息完全相同的数据消息。换句话说,在这些实施例中,内联交换机只是在将其连接到服务节点或集群的隧道中中继它在过程200开始时接收(在205)和从服务节点接收(在240)的数据消息。在这些情况下,内联交换机在向下一个服务动作节点转发它接收的数据消息之前只对该数据消息放置隧道分组报头。
在对接收到的数据消息执行其服务动作时,一个服务节点可能在发送回经修改的数据消息之前修改数据消息的报头值和/或其数据报。尽管有这样的修改,但是本文档中的讨论适用于在执行过程200期间(即,当这个交换机指示(一个或多个)服务节点或(一个或多个)集群执行期望的服务操作序列时,所述服务操作在205处接收到第一数据消息以开始过程200时被发起)由内联交换机接收的所有数据消息作为接收到的数据消息。普通技术人员将认识到的是,在每个服务操作之后,可以修改数据消息,使得结果得到的消息与对其执行操作的消息不相似(例如,具有不同的报头值或不同的数据报)。
而且,普通技术人员将认识到的是,在一些实施例中,内联交换机可能仅向服务节点发送接收到的数据消息的一部分。例如,在一些实施例中,内联交换机可以仅发送数据消息的报头、这个报头的一部分、数据消息的有效载荷或有效载荷的一部分。类似地,在一些实施例中,服务节点不发回作为它们接收的数据消息的修改版本的数据消息,而是发回某个值(例如,允许、丢弃等)。
当过程确定(在250)已经对于在205接收的数据消息执行了其识别出的所有服务动作时,该过程在ISS连接储存装置中创建(在255)记录,以指定应当对作为同一流的一部分的数据消息(如在205接收的数据消息)执行的服务动作或服务-动作序列。创建这个记录,使得对于作为同一流的一部分的后续数据消息,该过程不必搜索服务规则数据储存装置。相反,在210,该过程可以从连接储存装置中的记录为这些后续的数据消息识别其必须执行的(一个或多个)服务动作,并且它可以在215执行这些动作。对于过程200在连接储存装置中识别出的每个服务动作,该过程还在连接储存装置记录中识别必须执行该服务动作的识别出的服务节点或集群(即,在225识别出的节点或集群),使得同一流的所有数据消息都由用于那个服务动作的相同的服务节点或集群处理。
在255,过程200还更新其在ISS STAT储存装置中维护的统计信息,以反映由处理这个数据消息的一个或多个服务节点进行的当前数据消息的处理。在执行服务操作之后,过程200向调用它的模块(例如,SFE端口或VNIC)提供(255)数据消息,假设服务操作不要求丢弃数据消息,在这种情况下,该过程就这样通知调用模块。再次,由于执行了(一个或多个)服务操作,过程200返回到调用模块的数据消息通常是在205接收的数据消息的修改版本(例如,具有一个或多个不同的报头值和/或经修改的有效载荷),但是在一些情况下,返回的数据消息可能与接收到的数据消息完全相同。在255之后,过程结束。
在上面参考图2-6描述的几个示例中,内联交换机以负载均衡的方式选择用于处理数据消息的服务节点或集群,然后通过隧道向选定的节点或集群发送数据消息。在其它实施例中,内联交换机不从若干服务节点中选择服务节点,也不从若干服务集群中选择服务集群。例如,在一些实施例中,内联交换机仅仅是沿着一条隧道向服务集群中继数据消息,使得在服务集群处的负载-均衡节点然后可以选择该集群的服务节点来执行服务。
在这些实施例中的一些当中,至少一个服务集群实现碎片模型,其中一个主服务节点从内联服务交换机接收集群的数据消息。然后这个服务节点或者自己对数据消息执行服务或者将数据消息(例如,通过L3和/或L4网络地址转换、通过MAC重新引导等)引导到集群中的其它服务节点之一(称为次服务节点),以对数据消息执行服务。在一些实施例中,主服务节点基于接收到的数据消息负载弹性收缩或增加集群中次服务节点的数量。
图7示出了使用一个主要服务节点和零个或多个次服务节点的这种弹性服务模型的示例。这个示例在三个阶段705-715中示出,其中示出了服务节点集群700在三个不同时刻的操作。第一阶段705示出了在时间T1,集群仅包括一个主服务节点(PSN)720。如图所示,PSN 720具有负载均衡器(LB)和服务虚拟机(SVM)。
在第一阶段705中,PSN接收集群必须对其执行其服务的所有数据消息。这些消息由内联交换机105通过隧道750捕获并从其VM发送到集群700。在第一阶段705中,PSN的SVM730对这些消息执行所需的服务,然后通过隧道750将这些消息引导回内联交换机105。
第二阶段710示出了时间T2,集群已经被扩展成包括由第二服务虚拟机实现的另一个服务节点SSN1。在一些实施例中,服务节点SSN1被添加到集群,因为集群上的数据消息负载已超过第一阈值。在一些实施例中,当服务-节点控制器集合(未示出)检测到数据消息负载已超过第一阈值时,或者当PSN检测到这种条件并指示控制器集合添加SSN1时,控制器集合添加SSN1。在一些实施例中,服务-节点控制器集合从PSN获得数据消息负载。
为了评估数据消息负载是否超过阈值,在不同实施例中,控制器集合或PSN基于不同的度量来量化数据消息负载。在一些实施例中,这些度量包括以下参数中的一个或多个:(1)由集群或集群中的各个服务节点处理的流的数量,(2)由集群或集群中的各个服务节点处理的分组的数量,(3)由集群或组中的各个服务节点处理的分组数据的数量。
第二阶段710还示出,在时间T2,PSN对一些数据消息流执行集群的服务,同时将其它数据消息流引导到SSN1,使得这个服务节点可以对这些其它流执行这个服务。一旦PSN或SSN1对数据消息执行了服务,PSN就将数据消息引导到ISS 105。如图所示,一旦SSN1执行了服务,在一些实施例中,这个服务节点就将数据消息返回到PSN,PSN将其引导回ISS。在其它实施例中,SSN将经处理的数据消息直接返回到内联交换机。在这些实施例中的一些当中,SSN和内联交换机被配置为插入适当的分组报头值并且检查适当的分组报头值,以识别已经由SSN处理的数据消息。在还有其它实施例中,一旦供应了SSN,SSN就可以利用内联交换机(例如,利用内联交换机的主机)建立隧道,使得它们可以将其经处理的消息直接返回到内联交换机。
PSN的负载均衡器725执行负载均衡操作,该操作选择集群中的哪个服务节点(主或次)应当对PSN接收的每个数据消息执行组的服务。在一些实施例中,负载均衡器725基于ISS 105用来通过隧道750发送不同数据-消息流的不同隧道密钥的散列来分发数据消息。这种散列确保作为同一流由的部分的数据消息由集群中的相同服务节点进行处理。在一些实施例中,负载均衡还基于一些内部分组报头值。在其它实施例中,负载均衡仅基于内部分组报头值(即,它不基于隧道密钥)。在一些实施例中,负载均衡器725在连接储存装置中存储用于每个数据-消息流的每个服务节点选择的记录,并且使用这个记录来在挑选用于流中第一个数据消息的服务节点之后放弃对流的服务节点的重新评估选择。在一些实施例中,PSN的负载均衡器还确定何时应当将服务节点添加到集群或从集群中移除。
第三阶段715示出了时间T3,集群已经被扩展成还包括作为第三服务虚拟机的另一个服务节点SSN2。在一些实施例中,服务节点SSN2被添加到集群,因为集群上的数据消息负载已超过第二阈值,在一些实施例中,第二阈值与第一阈值相同,或者在其它实施例中,第二阈值与第一阈值不同。一些实施例在PSN或SSN1上的负载超过第二阈值量时添加服务节点SSN2。当N个(例如,两个或三个)服务节点上的负载超过阈值时,其它实施例添加新的服务节点。如前所述,在一些实施例中,服务节点控制器集合在它或PSN检测到数据消息负载已经超过第二阈值时添加SSN2。
第三阶段715还示出了时间T3,PSN对一些数据消息流执行集群的服务,同时将其它数据消息流引导到SSN1或SSN2,使得这些服务节点可以对这些其它流执行这种服务。如图所示,一旦服务节点PSN、SSN1或SSN2中的任一个对数据消息执行服务,PSN就通过隧道750向ISS 105返回数据消息。在处理该数据消息之后,SSN2就像SSN1一样向PSN提供其应答数据消息,使得PSN可以通过隧道750向ISS 105转发这个消息。
图8示出了其中VM 115的ISS 105顺序地从VM向弹性调整的服务-节点集群的不同集群转发数据消息的示例。在这个示例中,不同的服务集群对数据消息执行不同的服务操作。在一些实施例中,当多个集群驻留在相同位置时,一个集群的SSN可以是其它集群的PSN。
ISS 105通过隧道连接到每个服务集群的PSN,这允许每个服务集群驻留在ISS的局域网之外。通过顺序地向不同的服务集群中继数据消息,ISS 105可以对数据消息实现具有多个服务动作(在这个示例中为X)的复杂服务策略。隧道的使用允许一些或所有的集群在云中。换句话说,隧道允许ISS无缝地实现基于云的XaaS模型。
图9示出了ISS 105在一些实施例中执行以利用一个或多个弹性调整的服务节点集群来处理数据消息的过程900。除了过程900不执行负载均衡操作230以选择集群中的服务节点之外,这个过程与图2的过程200完全相同。如图所示,在识别出(在225)由服务集群的服务节点执行的服务动作之后,过程900仅沿着把ISS连接到服务集群的隧道向服务集群转发(235)数据消息。
图10概念性地示出了在一些实施例中在这种PSN接收到数据消息时该PSN执行的过程1000。过程1000识别PSN的SN组中应当处理接收到的数据消息的一个服务节点,然后指示识别出的服务节点对接收到的数据消息执行SN组的服务。识别出的服务节点可以是PSN本身,或者它可以是SN组中的SSN。
如图10中所示,当PSN通过隧道从ISS过滤器接收到数据消息时,过程1000开始(在1005)。在接收到数据消息之后,该过程确定(在1010)接收到的消息是否是PSN先前已经为其处理了至少一个数据消息的特定数据消息流的一部分。
为了做出这种确定,该过程检查(在1010)连接-状态数据储存装置,其存储(1)PSN先前处理的若干数据消息流中的每一个的身份,以及(2)PSN先前将其识别为用于处理每个识别出的流的数据消息的服务节点的服务节点的身份。在一些实施例中,该过程按照一个或多个流属性(例如,流的五元组标识符)识别连接状态数据储存装置中的每个流。而且,在一些实施例中,基于流属性的(例如,流的五元组报头值的)散列,连接-状态数据储存装置被散列索引。对于这种储存装置,PSN从数据消息的报头参数集合中生成散列值,然后使用这个散列值来识别储存装置中的一个或多个位置,以检查匹配的报头参数集合(即,为了匹配数据消息流属性集合)。
当过程识别出(在1010)流连接-状态数据储存装置中与接收到的数据消息流的属性匹配的条目时(即,当过程确定其先前处理了作为与接收到的数据消息同一流的一部分的另一个数据消息时),该过程将接收到的数据消息引导到(在1015)在连接-状态数据储存装置的匹配条目中识别出的(SN组中的)服务节点(即,引导到PSN先前识别出的用于处理该特定数据消息流的数据消息的服务节点)。然后这个服务节点对数据消息执行服务。这个服务节点可以是PSN本身,或者可以是SN组中的SSN。在对数据消息执行(在1015)服务之后,SN向调用它的ISS过滤器返回应答数据消息(例如,经处理的数据消息),然后结束。
另一方面,当过程确定(在1010)连接状态数据储存装置不存储用于接收到的数据消息的条目(即,确定其先前没有处理作为与接收到的数据消息同一流的一部分的另一个数据消息)时,过程变换到1020。在一些实施例中,连接-状态数据储存装置周期性地去除已经在给定的持续时间内未匹配任何接收到的数据消息的旧条目。因而,在一些实施例中,当过程确定(在1010)连接-状态数据储存装置没有存储用于接收到的数据消息的条目时,该过程可能先前已经识别出用于数据消息流的服务节点,但是匹配的条目可能已从连接-状态数据储存装置中被去除。
在1020,该过程确定接收到的数据消息是否应当由PSN本地处理,或者由SN组的另一个服务节点远程处理。为了做出这种确定,在一些实施例中,PSN基于在接收到数据消息时由PSN为SN组维护的负载均衡参数集合来执行识别用于接收到的数据消息流的服务节点的负载均衡操作。在一些实施例中,(1)基于关于SN组中的每个服务节点上的流量负载的更新的统计数据,以及(2)基于添加到SN组或从SN组中去除的服务节点来调整负载均衡参数集合。
在不同的实施例中,过程1000执行不同的负载均衡操作(在1020)。在一些实施例中,负载均衡操作依赖数据消息流的L2参数(例如,从L2参数(诸如源MAC地址)生成散列值,以识别为生成的散列值指定服务节点的散列范围)来向服务节点分发数据消息,而在其它实施例中,负载均衡操作依赖流的L3/L4参数(例如,从L3/L4参数(诸如五元组报头值)生成散列值,以识别指定用于生成的散列值的服务节点的散列范围),以向服务节点分发数据消息。在还有其它实施例中,负载均衡操作(在1020处)使用不同的技术(例如,轮询技术)在服务节点之间分发负载。
当过程确定(在1020)PSN应当处理接收到的数据消息时,该过程指示(在1025)PSN的服务模块对接收到的数据消息执行SN组的服务。在1025,过程1000还在流连接-状态数据储存装置中创建条目,以将PSN识别为用于处理作为与接收到的数据消息同一流的一部分的数据消息的服务节点。在一些实施例中,这个条目识别PSN并且识别指定消息的流的接收到的数据消息报头值(例如,五元组值)。在对数据消息执行(1025)服务之后,PSN向调用它的ISS过滤器返回应答数据消息(例如,经处理的数据消息),然后结束。
当过程确定(在1020),基于其负载均衡参数集合,PSN不应当处理接收到的数据消息时,过程识别(在1020)PSN的SN组中的另一个服务节点来对数据消息执行服务。因此,在这种情况下,过程将消息引导到(在1030)PSN的SN组中的另一个服务节点。为了重新引导数据消息,在不同实施例中,PSN使用不同的技术,诸如MAC重新引导(用于L2转发)、IP目的地网络地址转换(用于L3转发)、端口地址转换(用于L4转发)、L2/L3隧道化,等等。
为了执行MAC重新引导,在一些实施例中,过程1000将MAC地址改变为其在1020识别出的服务节点的MAC地址。例如,在一些实施例中,该过程将MAC地址改变为包含与PSN连接的SFE端口的端口组中的另一个SFE端口的MAC地址。更具体而言,在一些实施例中,SN组的服务节点(例如,SVM)被指派可以在同一主机或不同主机上指定的一个端口组的端口。在一些这样的实施例中,当PSN想要将数据消息重新引导到另一个服务节点时,它将数据消息中PSN端口的MAC地址用另一个服务节点的端口的MAC地址替换,然后向SFE提供这个数据消息,使得SFE可以直接或间接地(通过其它中间转发元件)向另一个服务节点的端口转发。
类似地,为了通过IP目的地网络地址转换(DNAT)将数据消息重新引导到另一个服务节点,PSN将数据消息中的目的地IP地址用另一个服务节点的目的地IP地址替换,然后向SFE提供这个数据消息,使得SFE可以直接或间接地(通过其它中间转发元件)向另一个服务节点转发。
为了通过端口地址转换将数据消息重新引导到另一个服务节点,PSN将数据消息中的目的地端口地址用另一个服务节点的目的地端口地址替换,然后使用这个新端口地址来将数据消息引导到另一个服务节点。在一些实施例中,PSN的网络地址转换可以包括对MAC地址、IP地址和端口地址中的两个或更多个的改变。
在将数据消息引导到(在1030)另一个服务节点之后,过程在连接-状态数据储存装置中创建(在1035)条目,以将该另一个服务节点识别为用于处理作为接收到的数据消息的同一流的一部分的数据消息的服务节点。在一些实施例中,这个条目识别(1)另一个服务节点,以及(2)指定消息的流的接收到的数据消息报头值(例如,五元组值)。在对数据消息执行服务之后,SSN向调用它的ISS过滤器返回应答数据消息(例如,经处理的数据消息),然后结束。在一些实施例中,SSN直接向ISS过滤器返回应答数据消息,而在其它实施例中,SSN通过PSN向ISS过滤器返回这种应答数据消息。
一些实施例的内联服务交换机基于一个或多个L4+参数有状态地向多个服务节点分发服务负载。L4+参数的示例包括会话密钥、会话cookie(例如,SSL会话标识符)、文件名、数据库服务器属性(例如,用户名)等。为了在服务器节点之间有状态地分发服务负载,在一些实施例中,内联服务交换机与数据-消息SCN和服务节点建立层4连接会话(例如,TCP/IP会话),使得交换机(1)可以检查为会话而交换的一个或多个初始有效载荷分组,以及(2)可以提取并存储L4+会话参数,供以后用于其会话的后续负载均衡操作。
图11示出了一些实施例的多主机系统1100的示例,其中内联服务交换机1105基于一个或多个L4+参数有状态地向多个服务节点分发服务负载。除了其主机1110的内联服务交换机1105与其相关联的VM并与服务节点建立层4连接会话(例如,TCP/IP会话)之外,系统1100与图1的系统100完全相同。
通过与其VM及其选择的服务节点的层4会话,ISS 1105(1)可以检查为会话而交换的初始有效载荷分组中的一个或多个,以及(2)可以提取和存储L4+会话参数,供以后用于针对其VM的其后续负载均衡操作。在与其VM和服务节点建立L4会话之后,ISS过滤器(1)从会话端点(即,从VM或服务节点)接收数据分组,(2)提取旧的分组报头,(3)检查分组有效载荷(即,L3和L4分组报头值之后的数据报),以识别它需要提取的任何L4+会话参数,(4)如果发现一个这样的参数,则提取任何需要的L4+会话参数,(5)存储任何提取出的会话参数(例如,在其主机1110上的连接储存装置1190中),以及(6)在将分组中继到另一个会话的端点(即,到服务节点或VM)之前,利用新的分组报头重新封装有效载荷。在一些实施例中,除了指定不同的TCP序列号之外,新的和旧的分组报头是相似的,如下面进一步描述的。
图12示出了ISS 1105通过与其VM和服务集群1250的服务节点1205建立L4连接会话来提取和重用会话参数。在这个示例中,服务集群1250包括通过SSL(安全套接字层)会话执行服务(例如,提供对安全内容的访问)的多个服务器(服务节点)。而且,在这个示例中,提取出并被重用的会话参数是SSL会话cookie。
图12给出了消息传送图,该图示出了ISS 1105如何将SSL分组的两个不同集合1230和1235从其相关联的VM中继到服务节点1205。如图所示,在两个消息传送流中,ISS1105首先通过执行3路TCP握手与VM建立TCP会话。在与其VM(对于SSL分组的第一集合1230)建立第一TCP会话之后,ISS 1105检查其VM 115发送的一个或多个分组的初始集合,并确定VM正在请求SSL服务会话。然后,ISS 1105确定所请求的SSL服务会话是新的会话,因为这个请求没有附带SSL会话cookie。
因此,ISS 1105确定它必须从服务集群1250中为所请求的SSL会话选择服务节点,并且它必须监视在VM与这个服务节点之间交换的分组,使得它可以记录用于这个会话的SSL会话cookie。在一些实施例中,ISS 1105基于其针对服务集群1250考虑的负载均衡标准的集合来选择集群中的服务节点1205。
在选择服务节点1205之后,ISS 1105与服务节点1205执行3路TCP握手,以便建立与服务节点1205的L4连接会话。一旦建立了这个会话,ISS 1105就开始向服务节点1205中继它从VM 115接收的分组,并向其VM 115中继它从服务节点1205接收的分组。在VM 115和服务节点1205之间中继数据分组时,在一些实施例中,ISS 1105可以调整所中继的数据消息的序列号,以解决VM与服务节点之间的序列号的差异。在一些实施例中,ISS 1105通过隧道向服务节点1205发送分组并从服务节点1205接收分组。
在从服务节点1205向VM 115中继一个或多个响应分组时,ISS 1105在初始的分组集合中识别由服务节点1205生成的SSL会话ID。这个会话ID常常被称为SSL会话ID或cookie。在创建SSL会话ID之后,生成SSL会话密钥,例如由VM基于服务节点的SSL证书来生成。SSL会话密钥的生成是计算密集型的。
当ISS 1105已经建立了与服务节点1205的L4连接时,它可以从服务节点1205发送的一个或多个分组的初始集合中提取SSL会话cookie。如图所示,ISS 1105将SSL会话cookie存储在连接储存装置1190中。在一些实施例中,存储这个SSL会话cookie的连接储存装置记录还包括作为生成这个cookie的服务节点的服务节点1205的身份。在一些实施例中,这个记录还包括当前流的一个或多个分组报头属性(诸如当前流的源IP、目的地IP、目的地端口和协议)。
在图12中所示的示例中,VM停止与服务节点的通信一段时间。然后通过发送数据分组的第二集合来恢复这个通信。因为VM想要像以前一样继续使用相同的SSL会话,所以VM发送其先前获得的SSL会话cookie。但是,在这种情况下,让VM对于这些新的数据分组使用不同的源端口并非是不寻常的。由于不同的源端口,ISS1105最初假设新的数据分组是针对新的流。
因此,ISS 1105通过执行另一个3路TCP握手来与VM建立另一个TCP会话。在与其VM建立这个第-二TCP会话之后,ISS 1105检查由其VM 115发送的一个或多个分组的初始集合,并确定这个分组集合包括SSL会话cookie。如图所示,ISS 1105提取这个cookie,将其与其连接储存装置1190中的cookie进行比较,识别存储这个cookie的记录(即,确定其先前已经存储了这个cookie),并且根据这个记录将服务节点1205识别为用于处理与这个请求相关联的SSL会话的服务节点。
然后,ISS 1105与服务节点1205执行另一个3路TCP握手,以便与服务节点1205建立另一个L4连接会话,因为它已经确定这个服务节点是应当处理请求SSL会话的节点。一旦建立了这个会话,ISS 1105就开始在其VM 115与服务节点1205之间来回中继分组。通过在最初建立SSL会话时提取和存储SSL会话cookie,ISS 1105可以向相同的服务节点1205适当地路由来自其VM 115的包含这个会话的cookie的后续数据分组。这是非常有益的,因为它允许SSL会话快速恢复,并且节省必须生成另一个会话密钥的计算资源。
如上面所提到的,一些实施例的内联服务交换机可以提取并存储不同的L4+会话参数,用于稍后在促进服务请求从VM到服务节点集群中的服务节点的高效分发中使用。其它示例包括会话密钥、文件名、数据库服务器属性(例如,用户名)等。图13示出了作为提取的L4+会话参数的文件名的示例。文件名是由VM 115请求并且由服务集群1350的服务器提供的一条内容(例如,图像、视频等)的名称。
在图13的示例中,VM的ISS 1105将所请求的文件名存储为内容处理消息1330的第一集合的一部分。作为这些消息的一部分,ISS(1)执行初始的TCP 3路握手,(2)接收VM的初始请求,以及(3)从请求中提取文件名。在一些实施例中,VM的初始请求是以URL(统一资源定位符)的形式,并且ISS 1105从这个URL提取文件名。URL常常包含被请求的内容类型的名称或缩写(例如,包含.mov、.img、.jpg或其它类似的命名,这些命名是识别所请求的内容的名称的附注)。在一些实施例中,ISS将提取出的文件名存储在其连接储存装置1190中识别其选择以处理这个请求的服务节点1305的记录中。从集群1350的服务器,ISS通过基于其对于它分发到集群1350的内容请求进行处理的负载均衡标准集合执行负载均衡操作来识别服务节点1305。
接下来,ISS 1105与服务节点1305执行3路TCP握手,以便建立与服务节点1305的L4连接会话。一旦建立了这个会话,ISS 1105就向服务节点1305中继内容请求。在向服务节点1305中继这个请求时,在一些实施例中,ISS 1105可以调整被中继的数据分组的序列号,以解决VM与服务节点1305之间序列号的差异。在一些实施例中,ISS 1105通过隧道向服务节点1305发送分组并从服务节点1305接收分组。
然后,ISS 1105从服务节点1305接收一个或多个响应分组,并将向VM 115中继这些分组。分组的这个集合包括所请求的内容片段。在一些实施例中,ISS 1105在连接储存装置1190中创建记录,以将服务节点1305识别为仅在从这个服务器接收到响应分组之后检索所请求的内容片段的服务器。
在一些实施例中,服务节点1305将其应答分组直接发送到VM 115。在这些实施例中的一些当中,ISS 1105向服务节点提供TCP序列号偏移量,使得这个节点可以使用这个偏移量来调整其在其响应来自VM 115的分组的应答分组中使用的TCP序列号。在一些实施例中,ISS 1105在被用来从ISS向服务节点1305中继分组的隧道的封装隧道分组报头中提供TCP序列号偏移量。而且,在一些实施例中,内联服务交换机1105被配置为为其相关联的VM建立L4连接会话,或者是被配置为为其相关联的VM建立L4连接会话的过滤器体系架构的一部分。在这些实施例中,为了检查由VM发送的L4参数,ISS 1105将不需要与其VM建立L4连接会话。
在其对内容片段的初始请求之后一段时间,VM 115通过请求相同的内容片段来开始内容处理消息1335的第二集合。在这种情况下,让VM对于这些新的数据分组使用不同的源端口并非是不寻常的。由于不同的源端口,ISS 1105最初假设新的数据分组是用于新的流。因此,ISS 1105通过执行3路TCP握手建立与其VM的另一个TCP会话。在与其VM建立这个第二TCP会话之后,ISS 1105检查由其VM 115发送的一个或多个分组的初始集合,并确定分组的这个集合包括内容请求。然后,ISS 1105从这个请求的URL提取文件名,将这个文件名与存储在其连接储存装置1190中的文件名进行比较,并且确定其先前已经通过使用服务节点1305处理了对这个内容片段的请求。
因而,ISS 1105与服务节点1305执行另一个3路TCP握手,以便与服务节点1305建立另一个L4连接会话。一旦建立了这个会话,ISS 1105就向这个服务节点中继该内容请求,并且在获得响应数据分组之后将它们中继到其VM。
这种方法是非常有益的,因为它节省了服务集群的必须获得相同的内容片段两次所需的资源。换句话说,去往同一服务节点是高效的,因为服务节点1305有可能仍然在其高速缓存或存储器中具有所请求的内容。当同一主机上的多个ISS 1105共享相同的连接储存装置时,这种方法也是有益的,因为当两个VM在特定的时间段内请求同一内容片段时,它允许一个VM的一个ISS去往与另一个VM的ISS相同的服务节点。
图14示出了VM 159的ISS 1105执行以便以粘滞方式处理来自相关联的VM的服务请求的过程1400。在执行这个过程中,ISS 1105(1)确定请求是否与先前由服务-节点集群的服务节点处理的服务请求相关联,以及(2)如果是,则将服务请求引导到先前使用的服务节点。ISS 1105通过检查它在其连接储存装置1901中为先前的请求存储的L4+会话参数来确定该请求是否与先前处理的请求相关联。
当ISS 1105接收到由其相关联的VM发送的数据消息时,过程1400开始。在一些实施例中,ISS 1105被部署在VM的出口数据路径中,使得它可以截取由其VM发送的数据消息。在一些实施例中,ISS 1105由VM的VNIC或通信连接到VM的VNIC的SFE端口调用。在一些实施例中,接收到的数据消息被寻址到与服务节点集群相关联的目的地地址(例如,目的地IP或虚拟IP地址)。基于这种寻址,ISS确定(在1405)数据消息是对由集群的服务节点执行的服务的请求。
在1410,该过程确定数据消息是否是该过程已为其处理其它数据消息的数据消息流的一部分。在一些实施例中,该过程通过检查其连接储存装置1190来做出这种确定,其中连接储存装置1190存储其最近处理的数据消息流的记录,如下面参考1445进一步描述的。每个记录存储该过程先前从它处理的先前数据消息中提取的一个或多个服务参数。这种会话参数的示例包括会话cookie、会话密钥、文件名、数据库服务器属性(例如,用户名),等等。每个记录还识别先前处理的作为同一流的一部分的数据消息的服务节点。在一些实施例中,这个记录还存储流的标识符(例如,五元组标识符)。此外,在一些实施例中,连接储存装置是可散列寻址的(例如,连接储存装置中的位置是基于流标识符的散列来识别的)。
当过程确定(在1410)它先前已经处理了来自与接收到的数据消息同一流的数据消息时,它变换到1415。在1415,该过程从连接储存装置1190检索服务节点的身份,这被用来处理同一流的先前数据消息,并将接收到的数据消息转发到识别出的服务节点进行处理。在一些情况下,在1415,该过程还(1)从连接储存装置1190检索针对数据消息的流的先前存储的(一个或多个)会话参数(例如,会话cookie),以及(2)向识别出的服务节点转发检索出的(一个或多个)参数,使得这个节点可以使用这(一个或多个)参数来处理转发的数据消息。在一些实施例中,过程1400不是将检索出的(一个或多个)服务参数转发到服务节点,而是在将数据消息转发到识别出的服务节点之前使用检索出的(一个或多个)服务参数对接收到的数据消息执行操作。而且,在一些实施例中,该过程提供不能在隧道密钥中编码的附加上下文信息(例如,租户ID、网络ID等)。在1415之后,过程1400结束。
当过程确定(在1410)它先前没有处理来自相同数据消息流的数据消息时,该过程建立(在1420)与VM的L4会话(例如,通过执行与VM的三路TCP握手)。在与其VM建立L4会话之后,该过程确定(在1425)由其VM发送的一个或多个分组的初始集合是否包含该过程可以用来确定其是否先前已经处理过类似服务请求的一个或多个L4服务参数。再次,这种会话参数的示例包括会话cookie、会话密钥、文件名、数据库服务器属性(例如,用户名),等等。
当分组的集合包括一个或多个这种L4服务参数时,该过程确定(在1420)连接储存装置1190是否包含用于识别出的(一个或多个)L4服务参数的记录。如果是,则过程变换到1415,以向记录的识别出的服务节点转发数据消息。在一些实施例中,过程1400还在1415执行其它操作,如上所述。过程1400可以从1410或1420变换到1415,因为该过程可以基于一个消息流的外部分组报头值(例如,L2、L3和L4值)或基于另一个消息流的内部分组值(例如,L4+参数)确定相同的会话记录是可应用的。当VM对跟着较早的相关服务会话的服务会话使用不同的源端口时,内部分组值可能与会话记录匹配,如上面参考图12所描述的。当VM请求相同的文件并且文件名被用来识别相同的服务节点时,结果也是如此,如上文参考图13所描述的。
当过程1400确定被检查的分组不包括连接储存装置为其存储将服务节点识别为用于处理VM的服务请求的服务节点的记录的L4+服务参数时,该过程使用(在1430)ISS的负载均衡器来选择服务节点集群中的服务节点以处理来自VM的服务请求。为了以负载均衡的方式选择服务节点,过程1400使用与接收的消息流属性匹配的服务规则。服务规则指定服务节点的集合,以及针对规则的每个指定的服务节点的负载均衡标准(例如,权重值)集合。在一些实施例中,不同的服务规则指定必须执行的不同服务动作集合,并且用于规则的每个服务动作的负载均衡标准指定用于在用于那个动作的服务节点之间分发数据消息的标准。
在选择(在1430)用于数据消息的服务节点之后,该过程建立(在1435)与服务节点的L4会话(例如,通过与服务节点的三路TCP握手),因为它软终止与VM的会话。接下来,在1440,该过程使用这个连接会话向选定的服务节点转发其从VM接收的数据消息。
通过这种连接,该过程还从选定的服务节点接收响应数据消息,并且通过其与VM的连接会话向VM转发这些接收到的数据消息。在往复中继数据消息时,如上所述,在一些实施例中,该过程调整数据消息的TCP序列号。在一些实施例中,该过程通过隧道与选定的服务节点交换消息。因此,在这些实施例中,该过程利用隧道报头封装其向服务节点中继的数据消息,并且从其从服务节点向VM传递的数据消息中去除这个隧道报头。当过程1400向服务节点中继数据消息时,在一些实施例中,它更新其在ISS STAT储存装置中维护的统计信息,以跟踪其引导到不同服务节点的数据消息。
在1445,该过程在连接储存装置1190中存储它从在VM与选定的服务节点之间中继的数据消息中提取的一个或多个L4+参数。在一些实施例中,如上面所提到的,该过程在记录中存储识别选定的服务节点的L4+参数集合。通过存储用于提取出的L4+参数集合的选定的服务节点的身份,该过程可以稍后重用选定的服务节点来处理与相同的L4+参数集相关的数据消息。在一些实施例中,在1445创建的记录还存储在1405接收的数据消息的流标识符,使得这个记录还可以基于流的外部分组报头属性来识别。在1445之后,过程结束。
以上参考图12-14描述的实施例的内联服务交换机选择服务节点集群中的服务节点,并向选定的服务节点中继数据消息。但是,如上所述,一些实施例的内联服务交换机选择一组服务节点集群中的服务节点集群,并向选定的集群转发数据消息。普通技术人员将认识到的是,一些实施例的内联服务交换机通过以粘滞方式向(执行相同服务的)服务集群转发数据消息来实现粘滞服务请求处理。换句话说,这些实施例中的内联交换机存储允许这个交换机向集群组中执行相同服务的相同服务节点集群转发相同或相似的服务会话请求的L4+会话参数。
图15示出了执行本发明一些实施例的ISS过滤器的主机1500的更详细的体系架构。如图所示,主机1500执行多个VM 1505、SFE 1510、多个ISS过滤器1530、多个负载均衡器1515、代理1520,以及发布器1522。每个ISS过滤器具有相关联的ISS规则储存装置1550,统计(STAT)数据储存装置1554,以及连接-状态储存装置1590。主机还具有聚合(全局)统计数据储存装置1586。
在一些实施例中,VM在管理程序之上执行,其中管理程序是启用主机的共享硬件资源的虚拟化的软件层。在这些实施例中的一些当中,管理程序提供ISS过滤器,以便支持内联服务将服务切换到其VM。
SFE 1510在主机上执行,以通过在主机外部操作的一个或多个转发元件(例如,交换机和/或路由器)将主机的VM彼此通信地耦合并耦合到主机外部的其它设备(例如,其它主机上的其它VM)。如图所示,SFE 1510包括连接到主机的物理网络接口卡(未示出)的端口1532,以及连接到每个VM的每个VNIC 1525的端口1535。
在一些实施例中,VNIC是由虚拟化软件(例如,由管理程序)实现的物理网络接口卡(PNIC)的软件抽象。每个VNIC负责通过其对应的SFE端口在其VM和SFE 1510之间交换数据消息。如图所示,VM用于其数据消息的入口数据路径包括SFE端口1532、SFE 1510、SFE端口1535,以及VM的VNIC 1525。VM用于其数据消息的出口数据路径涉及相同的组件,但是在相反的方向,具体而言是从VNIC 1525到端口1535、到SFE 1510,然后到端口1532。
通过其端口1532和NIC驱动器(未示出),SFE 1510连接到主机的PNTC,以发送传出分组并接收传入分组。SFE 1510执行消息处理操作,以向其另一个端口转发它在其一个端口上接收的消息。例如,在一些实施例中,SFE尝试使用VM数据消息中的报头值来匹配消息到基于流的规则,并且在找到匹配时,执行由匹配的规则指定的动作(例如,以向其端口1532或1535中的一个传递分组,这指示分组被提供给目的地VM或PNIC)。在一些实施例中,SFE从数据消息中提取虚拟网络标识符(VNI)和MAC地址。这些实施例中的SFE使用提取出的VNI来识别逻辑端口组,然后使用MAC地址来识别端口组内的端口。在一些实施例中,SFE1510是软件交换机,而在其它实施例中,它是软件路由器或组合的软件交换机/路由器。
在一些实施例中,SFE 1510实现一个或多个逻辑转发元件(例如,逻辑交换机或逻辑路由器),其中SFE在多主机环境中的其它主机上执行。在一些实施例中,逻辑转发元件可以跨多个主机,以连接在不同主机上执行但属于一个逻辑网络的VM。换句话说,可以定义不同的逻辑转发元件,以便为不同的用户指定不同的逻辑网络,并且每个逻辑转发元素可以由多个主机上的多个SFE定义。每个逻辑转发元件将一个逻辑网络的VM的流量与由另一逻辑转发元件服务的另一个逻辑网络的VM隔离。逻辑转发元素可以连接在同一主机和/或不同主机上执行的VM。
在一些实施例中,SFE端口1535包括对一个或多个模块的一个或多个功能调用,这些模块对在端口处接收的传入和传出的分组实现具体的输入/输出(I/O)操作。对端口的这些功能调用之一是针对ISS过滤器1530的。在一些实施例中,ISS过滤器对来自过滤器的VM的传出的数据消息执行服务交换机操作。在图15中所示的实施例中,每个端口1535具有其自己的ISS过滤器1530。在其它实施例中,端口1535中的一些或全部共享相同的ISS过滤器1530(例如,同一主机上的所有端口共享一个ISS过滤器,或者主机上作为同一逻辑网络的一部分的所有端口共享一个ISS过滤器)。
通过端口1535的功能调用实现的其它I/O操作的示例包括防火墙操作、加密操作等。在一些实施例中,通过实现这种功能调用的堆栈,端口可以对传入和/或传出的消息实现I/O操作链。在图15中所示的示例中,从端口1535调用ISS过滤器用于由VM发送的数据消息。其它实施例从VM的VNIC或从SFE的端口1532调用ISS过滤器用于由VM发送的数据消息,或者从VM的VNIC 1525、端口1535或端口1532调用这个过滤器用于为VM接收的数据消息(即,沿着VM的入口路径部署服务操作调用)。
对于由其相关联的VM发送的数据消息,ISS过滤器1530强制执行存储在ISS规则储存装置1550中的一个或多个服务规则。这些服务规则实现一个或多个服务策略。基于服务规则,ISS过滤器(1)确定所发送的数据消息是否应当由一个或多个服务节点或集群处理,(2)如果是,则选择用于处理数据消息的服务节点或集群,并向选定的节点或集群转发数据消息(例如,通过隧道)。
在一些实施例中,服务规则储存装置1550中的每个服务规则具有(1)相关联的数据消息标识符(例如,分组报头值)的集合,(2)一个或多个动作的集合,(3)对于每个动作,执行该动作的服务节点或服务节点集群的集合,以及(4)对于每个动作,用于在规则的服务节点或服务节点集群的集合中选择服务节点或集群的负载均衡准则集合。如下面进一步描述的,在一些实施例中,规则可以通过为连接到服务节点或集群的隧道(例如,从主机、或SFE或ISS过滤器)提供标识符来识别服务节点或集群。
在被调用处理数据消息之后,在一些实施例中,ISS过滤器1530确定接收到的数据消息的标识符(例如,五元组)是否与其服务规则储存装置中的服务规则的数据消息标识符匹配。当接收到的数据消息的报头值与服务规则储存装置中的一个或多个服务规则的规则匹配标识符不匹配时,ISS过滤器1530通知端口1535它已经完成数据消息的处理,而不对数据消息执行任何服务。ISS过滤器还在其连接储存装置1590中存储这个决定的记录。这个记录识别数据消息流标识符(例如,其五元组标识符)并且识别出不需要为这个数据消息流执行服务动作。这个记录可以被用于同一流的后续数据消息的快速处理。
当数据消息的报头值与服务规则匹配时,ISS过滤器执行利用匹配的服务规则指定的动作集合。当动作集合包括多于一个操作时,ISS过滤器顺序地执行服务动作。在一些实施例中,匹配的服务规则的服务动作由SN组的服务节点或SN集群组的SN集群执行。因而,为了执行这种服务动作,ISS过滤器选择用于处理数据消息的服务节点或集群,并向选定的节点或集群转发数据消息。
在一些实施例中,ISS过滤器1530通过隧道向选定的节点或集群转发数据消息。在其它实施例中,ISS过滤器1530通过隧道连接到一些服务节点/集群,而不使用隧道连接到其它服务节点/集群。例如,在一些实施例中,ISS过滤器1530可能使用L3或L4目的地网络地址转换(DNAT)或MAC重定向来向一些服务节点转发数据消息。而且,在一些实施例中,一个或多个服务节点可能在与ISS过滤器1530相同的主计算机1500上执行,并且在这些实施例中,ISS过滤器1530通过DNAT、MAC重定向或作为一些实施例的过滤器框架的一部分的某种其它转发机制将数据消息引导到这些服务节点。在一些实施例中,服务规则具有指定不同的重新定向机制的标识符,因为一个规则可以,或者不同的规则可以,识别通过不同的重定向机制可访问的不同服务节点或SN集群。
当ISS过滤器1530使用隧道向服务节点或集群发送数据消息时,在一些实施例中,ISS过滤器使用隧道分组报头来封装数据消息。在一些实施例中,这种分组报头包括隧道密钥。在其它实施例中,ISS过滤器1530具有另一个利用隧道分组报头封装数据消息的I/O链过滤器。
在一些实施例中,ISS过滤器1530必须与服务节点建立L4连接会话。在一些实施例中,ISS过滤器还必须与其VM建立L4连接会话。为了建立L4连接会话,在一些实施例中,ISS过滤器与连接的另一端(例如,与服务节点或VM)执行三路TCP/IP握手。
如上面所提到的,在一些实施例中,匹配服务规则指定用于执行由规则指定的服务动作的每个服务节点或集群的集合的负载均衡标准集合。在这些实施例中,ISS过滤器1530让其相关联的负载均衡器1550使用规则的指定的负载均衡标准来从指定的SN组中选择服务节点或者从指定的SN集群组中选择服务集群。
负载均衡器以负载均衡的方式向由负载均衡标准指定的服务节点或SN集群分发用于执行服务动作的数据消息负载。在一些实施例中,负载均衡标准是与服务节点或SN集群相关联的权重值。上面描述了使用权重值以负载均衡的方式向服务节点分发新的数据消息流的一个示例。
在一些实施例中,权重值由代理1520和/或控制器集合基于负载统计信息生成并调整。在一些实施例中,每个ISS过滤器1530具有其自己的负载均衡器1515,而在其它实施例中,多个ISS过滤器1530共享相同的负载均衡器1525(例如,作为一个逻辑网络的一部分的VM的ISS过滤器在每个主机上使用一个负载均衡器1515)。
ISS过滤器1530在连接状态储存装置1590中存储维护针对ISS过滤器1530先前已处理的数据消息流的连接状态的数据记录。这种连接状态允许ISS过滤器1530有状态地向相同的内容服务器分发作为同一流的一部分的数据消息。在一些实施例中,连接储存装置中的每个记录对应于ISS过滤器1530先前已处理的数据消息流。
每个记录存储必须应用到流的数据消息的服务规则集合的描述,或者具有对这种描述的引用(例如,指针)。在一些实施例中,当服务规则集合的操作需要数据消息被丢弃时,连接-储存装置记录也指定这个动作,或者代替服务规则描述而指定这个动作。而且,当不需要对这个流的数据消息执行服务时,在一些实施例中,连接-储存装置记录指示ISS应当允许接收到的数据消息沿着VM的出口数据路径传递。在一些实施例中,这个记录存储流的标识符(例如,五元组标识符)。此外,在一些实施例中,连接储存装置是可散列寻址的(例如,连接储存装置中的位置是基于流标识符的散列来识别的)。当ISS过滤器1530存储L4+会话参数时,在这些实施例中的一些当中,ISS过滤器1530将这个参数存储在连接状态储存装置1590中。
在一些实施例中,每当ISS过滤器将消息引导到服务节点或SN集群时,对于它中继到服务节点和/或集群的数据流量,ISS过滤器更新其在它STAT数据储存装置1554中维护的统计信息。这种统计信息的示例包括被中继到每个服务节点或集群的数据消息的数量(例如,分组的数量)、数据消息流和/或数据消息字节。在一些实施例中,度量可以被规格化到单位时间,例如,每秒、每分钟等。
在一些实施例中,代理1520采集(例如,周期性地收集)ISS过滤器存储在STAT数据储存装置1554中的统计信息,并将这些统计信息中继到控制器集合。基于控制器集合从各种主机的各种代理1520采集的统计信息,控制器集合(1)向每个主机的代理1520分发聚合的统计信息,使得每个代理可以为其主机上的负载均衡器定义和/或调整负载均衡标准,和/或(2)分析聚合的统计信息,以指定和向主机分发负载均衡标准的部分或全部。在控制器集合根据聚合的统计信息生成负载均衡标准的一些实施例中,控制器集合向主机的代理1520分发生成的负载均衡标准。
在其中代理1520从控制器集合接收新的负载均衡标准或新的ISS规则的实施例中,代理1520将这些标准或新规则存储在主机级规则储存装置1588中,用以传播到ISS规则储存装置1550。在其中代理1520从控制器集合接收聚合的统计信息的实施例中,代理1520将聚合的统计信息存储在全局统计数据储存装置1586中。在一些实施例中,代理1520分析这个储存装置1586中的聚合的统计信息,以定义和/或者调整负载均衡标准(例如,权重值),然后将其存储在规则储存装置1588中,用以传播到ISS规则储存装置1550。发布器1522检索代理1520存储在规则储存装置1588中的每个服务规则和/或更新的负载均衡标准,并且将检索出的规则或标准存储在需要强制执行这个规则或标准的每个ISS过滤器的ISS规则储存装置1550中。
代理1520不仅基于新接收的聚合的统计信息传播服务规则更新,而且还基于对它从控制器集合接收的SN组或集群组的更新来传播服务规则或更新服务规则。再次,代理1520将这种更新的规则存储在规则数据储存装置1588中,从那里发布器将它们传播到需要强制执行这些规则的ISS过滤器1530的ISS规则储存装置1550。在一些实施例中,控制器集合向ISS代理1520提供ISS代理转换为让ISS过滤器实现的服务规则的高级服务策略。在一些实施例中,代理1520通过带外控制信道与控制器集合进行通信。
一些实施例提供了用于重新配置数据中心中的应用或服务层部署的控制器驱动的方法。在一些实施例中,控制器集合120为主计算机提供用于建立若干隧道的参数,每个隧道在主计算机和可以与主计算机处于相同数据中心中或者可以与数据中心处于不同位置的服务节点之间。在一些实施例中,所提供的隧道建立参数包括隧道报头分组参数。在一些实施例中,这些参数还包括隧道密钥,而在其它实施例中,这些参数包括用于生成隧道密钥的参数。在一些实施例中,隧道密钥被用来允许多个不同的数据消息流使用从主机到服务节点的一个隧道。在一些实施例中,建立隧道需要利用供应的隧道参数(例如,隧道报头参数、隧道密钥等)配置在隧道端点的模块。
在一些实施例中,隧道将主计算机与在同一数据中心内或在数据中心外部操作的一个或多个服务提供商的若干服务节点连接。在一些部署中,在每个主机和服务节点之间只建立一条隧道,并且该主机上的所有ISS过滤器都使用相同的隧道将数据消息中继到服务节点。这样做可以减少隧道的数量。这种方法可以被看作是在主机的SFE和服务节点之间建立一条隧道。在其它部署中,在主机和服务节点之间建立多于一条隧道。例如,在一些部署中,在主机上的每个ISS过滤器和服务节点之间建立一条隧道。
在一些实施例中,控制器集合120为数据中心中的SCN定义数据消息分发规则,并将这些规则推送到SCN的ISS过滤器。然后,ISS过滤器将数据消息分发到由分发规则识别为用于数据消息的数据计算节点(DCN)的DCN。在其它实施例中,控制器集合120为数据中心中的SCN定义数据消息分发策略,并将这些策略推送到执行SCN的主机。然后主机从这些策略中生成分发规则,然后基于这些策略配置其ISS过滤器。
在一些实施例中,分发规则包括(1)用来识别与规则匹配的数据消息流的规则标识符,以及(2)用于与规则匹配的数据消息流的服务动作集合。在一些实施例中,规则标识符可以按照由应用级网关指派的组标识符(诸如虚拟IP地址(VIP))或元数据标签来定义。
在一些实施例中,通过参考识别用于执行服务动作的服务节点集合的标识符来定义规则的每个服务动作。一些规则可以指定由两个或更多个服务提供商的两个或更多个服务节点集合执行的两个或更多个服务动作。在一些实施例中,每个服务-节点集合是服务节点集群,并且在规则中参考识别(1)到服务节点集群的一条隧道或者(2)识别服务-节点集群中的每个服务节点的一条隧道的隧道标识符集合来定义。
对于每个服务动作,分发规则还包括用于规则的每个服务动作集合的选择标准集合。在一些实施例中,选择标准集合包括被动态评估的一个或多个标准(例如,基于在主机上执行的SCN的身份,等等)。在一些实施例中,选择标准集合是指定用于在执行服务动作的服务节点之间分发新的数据消息流的标准的负载均衡标准集合。
这种控制器驱动的方法可以无缝地重新配置数据中心中的应用或服务层部署,而不必将SCN配置为使用新的组地址或标签(例如,新的VIP)。控制器集合只需要为内联交换机提供新的分发规则,该分发规则基于先前配置的组地址或标签来规定新的流量分发模式。在一些实施例中,无缝的重新配置可以基于由SCN使用的任意分组报头参数(例如,L2、L3、L4或L7参数)。换句话说,在一些情况下,这些分组报头参数不一定要包括组地址或标签。
如上面所提到的,在一些实施例中,内联交换机可以被配置为基于与分组相关联并且由应用级网关(ALG)注入到分组(例如,作为L7参数)中的元数据标签来分发数据消息。例如,由于ALG被配置为在分组进入网络域(例如,逻辑域)时检查和标记分组,因此,在一些实施例中,控制器集合被配置为将新的分发策略和/或规则推送到配置这些交换机在网络域中实现新的应用或服务层部署的内联交换机。
现在将参考图16-19描述一些实施例的控制器驱动的方法。图16示出了控制器重新配置应用层部署以在web服务器1605的集合和应用服务器1610的集合之间插入防火墙服务操作的的示例。这个图示出了实现三服务器层部署的数据中心,其中第一层包括一个或多个web服务器1605,第二层包括一个或多个应用服务器1610,并且第三层包括一个或多个数据库服务器1615。
如图所示,控制器1620最初利用消息分发规则配置web服务器1610的内联交换机1630,其中消息分发规则指示交换机向应用服务器转发具有特定VIP(VIP1)作为其目的地IP地址的接收到的分组流。图16示出了这个规则1650的示例。如图所示,这个规则将VIP1指定为流匹配属性,AS(应用服务器)类型作为要执行的动作类型,IP地址集合1作为应用服务器1610的IP地址的集合。
在最初配置内联交换机1630之后一段时间,控制器1620用新的分组分发规则1655重新配置这些交换机1630,新的分组分发规则1655指示交换机(1)首先将这种分组流(即,具有VIPl用作其目的地IP地址的分组流)转发到防火墙服务器1625的集合,然后(2)如果防火墙服务器不指示web服务器丢弃该分组流,则向应用服务器1610转发这个分组流的分组。附图所示,每个规则1655指定(1)VIP1作为流匹配属性,(2)FW(防火墙)类型作为第一动作的类型,(3)IP地址集合2作为防火墙服务器1625的IP地址的集合,(4)AS(应用服务器)类型作为第二动作的类型,以及(5)IP地址集合1作为应用服务器1610的IP地址的集合。
在一些实施例中,控制器1620提供给网络服务器交换机1630的新分组分发规则为具有VIP1目的地IP的流规定了(1)首先识别防火墙操作,然后(2)识别应用级操作的服务策略链。这个新规则将替换仅为具有VIP1目的地IP的流指定应用级别操作的先前规则。
在一些实施例中,对于规则指定的每个操作,规则包括或参考(1)执行那个操作的服务器集合的标识符(例如,IP地址、隧道标识符等),以及(2)用于将不同的流分发到集合中的不同服务器的负载均衡标准。在将数据消息引导到防火墙1625时,内联交换机基于负载均衡标准执行负载均衡操作,以在防火墙1625之间散布分组流负载。在一些实施例中,针对与多个不同服务策略集合相关联的多个不同的VIP,控制器1620利用多个不同的规则配置内联交换机1630。
在图16的示例中,控制器重新配置web服务器1605(1)以将具有VIP1作为目的地IP地址的分组流引导到防火墙服务器,然后在接收到关于是否不应当丢弃分组流的防火墙服务器评估之后,(2)将用于这个流的分组转发到应用服务器。图17示出,在其它实施例中,控制器1720(1)重新配置web服务器1705的内联交换机1730,以将具有目的地IP地址VIP1的所有分组转发到防火墙服务器1725,以及(2)配置防火墙服务器1725,以便如果防火墙服务器1725确定不应当丢弃分组,则这个方法将这些分组直接转发到应用服务器1710。
如图所示,控制器1720最初利用上面描述的规则1650配置内联交换机。然后,控制器利用规则1755重新配置内联交换机,其中规则1755指定(1)VIP1作为流匹配属性,(2)FW(防火墙)类型作为动作类型,以及(3)IP地址集合2作为防火墙服务器1725的IP地址集合。在图17的示例中,控制器然后配置防火墙服务器1725以向应用服务器1710直接转发任何通过的分组。在这些实施例的一些当中,控制器通过配置放在防火墙服务器的出口路径中的内联交换机以向应用服务器1710转发经防火墙处理的分组来配置防火墙服务器。
图18示出了控制器1620执行以为在主机上供应的VM的内联交换机定义服务策略规则的过程1800。如图所示,过程1800最初识别(在1805)要配置的新的内联交换机。接下来,在1810,该过程选择可以被用来识别内联交换机可以接收的分组流中的DCN组或安全策略/规则的虚拟标识符(例如,VIP、虚拟地址等)。
在1815,过程1800识别与选定的虚拟标识符相关联的服务策略集合。服务策略集合指定需要对与选定的虚拟标识符相关联的分组流执行的一个或多个服务动作。然后该过程定义(在1820)用于识别出的服务策略集合的服务规则。对于服务策略集合中的每个服务动作,服务规则指定执行该服务动作的服务节点或服务节点集群的集合。
在1825,然后该过程在识别出的服务策略集合中选择服务动作。接下来,在1830,该过程生成并在既定的规则(即,在1820定义的规则)中存储用于执行选定的服务动作的服务节点集合或服务-节点集群的集合的负载均衡标准。该过程基于服务节点或服务-节点集群集合的成员身份生成负载均衡标准,以及关于服务-节点或服务集群集合上控制器从内联交换机收集的分组流负载的统计信息。
在1835,该过程确定它是否已经检查了识别出的服务策略集合中的所有服务动作。如果不是,则该过程选择(在1840)识别出的服务策略集合中的另一个服务动作,然后转换回1830,以生成并存储用于执行选定的服务动作的服务节点或服务-节点集群的集合的负载均衡标准。当过程确定它已经检查了识别出的服务策略集合中的所有服务动作时,该过程确定(在1845)它是否已经处理了可以被用来识别内联交换机可以接收的分组流中的DCN组或安全策略/规则的所有虚拟标识符。
如果不是,则该过程选择(在1850)另一个虚拟标识符,该虚拟标识符可以被用来识别内联交换机可以接收的分组流中的DCN组或安全策略/规则。在1850之后,该过程返回到1815,以便对选定的虚拟标识符重复操作1815-1850。当过程确定(在1845)它已经检查了用于内联交换机的所有虚拟标识符时,该过程结束。
在过程1800中,服务策略集合与可以在内联交换机可以接收的分组流中使用的虚拟标识符相关联。在其它实施例中,控制器可以为与两个或更多个虚拟标识符(例如,VIP和L7标签)的集合或者与虚拟标识符和一个或多个其它分组报头值(例如,源IP地址、源端口地址等)相关联的服务策略集合定义服务规则。更一般地说,在一些实施例中,控制器可以定义服务规则,该服务规则定义实现服务策略集合的一个或多个服务动作,并且可以将这个服务规则与物理和/或虚拟分组报头值的任何任意组合相关联。
以这种方式,在一些实施例中,控制器可以无缝地重新配置数据中心中的应用或服务层部署,而不必将SCN配置为使用新的DCN组地址(例如,新的VIP)。控制器只需要向内联交换机提供新的分发规则,这些规则基于先前配置的DCN组地址和/或基于由SCN使用的任何任意的分组报头参数(例如,L2、L3、L4或L7参数)来指定新的流量分发模式。
图19示出了用于修改服务规则并重新配置实现这个服务规则的内联服务交换机的过程1900。在一些实施例中,这个过程由一个或多个控制器的集合中的每个控制器执行。如图所示,当过程1900接收到对于控制器集合先前已经为其生成服务规则并将这个服务规则分发到实现服务策略集合的一个或多个在线交换机的集合的服务策略集合的修改时,过程1900开始(在1905)。接收到的修改可以涉及一个或多个服务动作从服务策略集合的去除或者一个或多个服务动作向服务策略集合的添加。可替代地或相结合地,接收到的修改可以涉及服务策略集合中一个或多个服务动作的重新排序。
接下来,在1910,过程1900改变服务规则中的服务动作链,以考虑接收到的修改。这种改变可以在规则的操作链中插入一个或多个服务动作,可以从规则的动作链中去除一个或多个服务动作,或者以重新排序规则的动作链中的一个或多个服务动作。在一些实施例中,服务规则通过指定(1)两个或更多个服务动作类型和(2)对于每个服务动作类型指定识别执行该服务动作类型的服务节点或服务-节点集群的集合的IP地址集合来指定服务动作链。在一些实施例中,每个服务规则还为每个动作类型的IP地址集合指定负载均衡标准集合。
对于服务动作链中的每个新的服务动作,过程1900然后定义(在1915)负载均衡标准集合(例如,用于加权的轮询负载均衡方案的权重值集合)。在一些实施例中,该过程基于(1)执行服务动作的服务节点或服务-节点集群的集合的成员身份,以及(2)控制器从内联交换机收集的关于服务-节点或服务-集群集合的分组流负载的统计信息来生成负载均衡标准集合。
最后,在1920,该过程将经修改的服务规则分发给执行处理该服务规则的内联服务交换机的主机。这些是可能遇到与经修改的服务规则相关联的分组的内联服务交换机。在1920之后,过程结束。
许多上述特征和应用被实现为被指定为记录在计算机可读存储介质(也被称为计算机可读介质)上的指令集的软件过程。当这些指令由一个或多个处理单元(例如,一个或多个处理器、处理器核心或其它处理单元)执行时,它们使(一个或多个)处理单元执行指令中所指示的动作。计算机可读介质的示例包括但不限于CD-ROM、闪存驱动器、RAM芯片、硬盘驱动器、EPROM等。计算机可读介质不包括无线地或经有线连接传递的载波和电子信号。
在本说明书中,术语“软件”意在包括驻留在只读存储器中的固件或存储在磁存储器中的应用,其可以被读取到存储器中,以供处理器处理。而且,在一些实施例中,多个软件发明可以被实现为更大程序的子部分,同时保留不同的软件发明。在一些实施例中,多个软件发明也可以被实现为单独的程序。最后,一起实现这里描述的软件发明的单独程序的任意组合在本发明的范围内。在一些实施例中,当被安装成在一个或多个电子系统上操作时,软件程序定义运行并执行软件程序的操作的一个或多个具体的机器实现。
图20概念性地示出了利用其实现本发明一些实施例的电子系统2000。电子系统2000可以被用于执行上述控制、虚拟化或操作系统应用中的任何一个。电子系统2000可以是计算机(例如,台式计算机、个人计算机、平板计算机、服务器计算机、主机、刀片计算机等)、电话、PDA或任何其它种类的电子设备。这种电子系统包括各种类型的计算机可读介质和用于各种其它类型的计算机可读介质的接口。电子系统2000包括总线2005、(一个或多个)处理单元2010、系统存储器2025、只读存储器2030、永久储存装置2035、输入设备2040和输出设备2045。
总线2005共同表示通信连接电子系统2800的多个内部设备的所有系统、外围设备和芯片集总线。例如,总线2005将(一个或多个)处理单元2010与只读存储器2030、系统存储器2025和永久储存装置2035通信连接。
从这些各种存储器单元,(一个或多个)处理单元2010检索要执行的指令和要处理的数据,以便执行本发明的过程。在不同的实施例中,(一个或多个)处理单元可以是单个处理器或多核心处理器。
只读存储器(ROM)2030存储(一个或多个)处理单元2010和电子系统的其它模块所需的静态数据和指令。另一方面,永久储存装置2035是读写存储器设备。这种设备是即使当电子系统2000关闭时也存储指令和数据的非易失性存储器单元。本发明的一些实施例使用大容量存储设备(诸如磁或光盘及其对应的盘驱动器)作为永久储存装置2035。
其它实施例使用可移动储存装置(诸如软盘、闪存驱动器等)作为永久储存装置。就像永久储存装置2035,系统存储器2025是读写存储设备。但是,与储存装置2035不同,系统存储器是易失性读写存储器,诸如随机存取存储器。系统存储器存储处理器在运行时需要的一些指令和数据。在一些实施例中,本发明的过程存储在系统存储器2025、永久储存装置2035和/或只读存储器2030中。从这些各种存储器单元,(一个或多个)处理单元2010检索要执行的指令和要处理的数据,以便执行一些实施例的过程。
总线2005还连接到输入和输出设备2040和2045。输入设备使得用户能够向电子系统传送信息和选择命令。输入设备2040包括字母数字键盘和定点设备(也称为“光标控制设备”)。输出设备2045显示由电子系统生成的图像。输出设备包括打印机和显示设备,诸如阴极射线管(CRT)或液晶显示器(LCD)。一些实施例包括诸如既充当输入设备又充当输出设备的触摸屏的设备。
最后,如图20中所示,总线2005还通过网络适配器(未示出)将电子系统2000耦合到网络2065。以这种方式,计算机可以是计算机的网络(诸如局域网(“LAN”)、广域网(“WAN”)或内联网)的一部分或者是网络的网络(诸如互联网)的一部分。电子系统2000的任何或全部部件可以与本发明结合使用。
一些实施例包括将计算机程序指令存储在机器可读或计算机可读介质(作为替代,被称为计算机可读存储介质、机器可读介质或机器可读存储介质)中的电子部件,诸如微处理器、储存装置和存储器。这种计算机可读介质的一些示例包括RAM、ROM、只读光盘(CD-ROM)、可记录光盘(CD-R)、可重写光盘(CD-RW)、只读数字通用光盘(例如,DVD-ROM、双层DVD-ROM)、各种可记录/可重写DVD(例如,DVD-RAM、DVD-RW、DVD+RW等)、闪存(例如,SD卡、迷你SD卡、微型SD卡等)、磁和/或固态硬盘驱动器、只读和可记录盘、超密光盘、任何其它光或磁介质,以及软盘。计算机可读介质可以存储可由至少一个处理单元执行的计算机程序并且包括用于执行各种操作的指令集。计算机程序或计算机代码的示例包括诸如由编译器产生的机器代码,以及包括由计算机、电子部件或微处理器利用解释器执行的更高级代码的文件。
虽然上述讨论主要参考执行软件的微处理器或多核心处理器,但是一些实施例由一个或多个集成电路(诸如专用集成电路(ASIC)或现场可编程门阵列(FPGA))执行。在一些实施例中,这种集成电路执行存储在电路本身上的指令。
如本说明书中所使用的,术语“计算机”、“服务器”、“处理器”和“存储器”全都是指电子或其它技术设备。这些术语不包括人或人的群体。为了本说明书的目的,术语“显示”是指在电子设备上显示。如本说明书中所使用的,术语“计算机可读介质”和“机器可读介质”被完全限于以计算机可读的形式存储信息的有形的物理对象。这些术语排除了任何无线信号、有线下载信号和任何其它短暂信号。
虽然已经参考众多具体细节描述了本发明,但是本领域普通技术人员将认识到,在不背离本发明的精神的情况下,本发明可以以其它具体形式体现。例如,在上述若干实施例中,内联交换机沿着SCN的出口数据路径截取数据消息。但是,在其它实施例中,内联交换机沿着SCN的入口数据路径截取数据消息。
此外,多个附图概念性地示出了过程。这些过程的具体操作可以不按所示和所描述的确切次序执行。具体操作可以不在一个连续的操作序列中执行,并且在不同的实施例中可以执行不同的具体操作。此外,过程可以利用若干子过程来实现,或者作为更大的宏过程的一部分来实现。因此,本领域普通技术人员将理解,本发明不受前述说明性细节限制,而是由所附权利要求限定。
Claims (41)
1.一种非临时性机器可读介质,其存储用于向一组服务节点(SN)发送与源计算节点(SCN)相关联的数据消息的程序,所述程序要由至少一个处理单元执行,所述程序包括用于以下的指令集:
截取与SCN相关联的数据消息并确定是否必须对所述数据消息执行服务动作;
当必须对数据消息执行服务动作时,识别SN组中的应当接收所述数据消息的SN,所述SN组包括用于执行所述服务动作的多个SN;以及
沿着连接到所述SN的隧道向识别出的SN发送数据消息。
2.如权利要求1所述的非临时性机器可读介质,其中
处理单元在设备上执行,并且所述隧道将所述设备与所述服务节点连接,
用于识别SN的指令集包括用于从连接所述设备与所述多个服务节点的多条隧道中识别所述隧道的指令集。
3.如权利要求1所述的非临时性机器可读介质,其中
所述数据消息与数据消息流相关联,
用于沿着隧道发送数据消息的指令集包括由于所述隧道被用来向识别出的服务节点发送具有其它隧道密钥的其它数据消息流,所以将唯一隧道密钥用于所述数据消息的流的指令集。
4.如权利要求3所述的非临时性机器可读介质,其中
SCN在具有多个其它SCN并且具有软件转发元件的主计算机上执行,
所述隧道由在所述主机上执行的至少两个SCN使用来向识别出的服务节点发送数据消息,
识别出的服务节点在服务节点发回的应答数据消息中使用所述隧道密钥,
所述程序还包括用于使用所述隧道密钥将应答数据消息与发送到识别出的SN的数据消息相关联的指令集。
5.如权利要求1所述的非临时性机器可读介质,其中用于识别SN的指令集包括用于执行从该组SN中选择识别出的SN的负载均衡操作的指令集。
6.如权利要求5所述的非临时性机器可读介质,其中所述负载均衡操作基于指定用于跨该SN组的服务节点散布针对服务的数据消息负载的特定方式的负载均衡标准集合。
7.如权利要求1所述的非临时性机器可读介质,其中用于确定是否必须对数据消息执行服务动作的指令集包括用于识别服务规则储存装置中用于所述数据消息的服务规则的指令集。
8.如权利要求7所述的非临时性机器可读介质,其中用于识别服务规则储存装置中的服务规则的指令集包括用于将所述数据消息的报头参数集合与所述服务规则的规则标识符匹配的指令集,服务规则储存装置中的多个服务规则中的每一个具有按照数据-消息报头参数集合指定的规则标识符。
9.如权利要求8所述的非临时性机器可读介质,其中数据消息的报头参数和匹配规则标识符包括虚拟IP(互联网协议)地址(VIP),所述服务规则储存装置存储与和所述VIP相关联的一个或多个服务动作的集合关联的至少一个服务规则。
10.如权利要求8所述的非临时性机器可读介质,其中数据消息的报头参数和匹配规则标识符包括一个或多个L3(层3)或L4(层4)分组报头值,其中两个规则的至少两个规则标识符由两个不同的L3/L4参数集合定义。
11.如权利要求7所述的非临时性机器可读介质,其中
服务规则为数据消息指定至少两个动作,
所述程序还包括用于以下的指令集:
通过隧道从识别出的服务节点接收应答数据消息;
识别另一个SN组中的应当对截取的数据消息执行第二动作的另一个SN;以及
沿着连接到另一个识别出的服务节点的另一条隧道向另一个识别出的SN发送数据消息以供所述另一个识别出的SN执行第二动作。
12.如权利要求11所述的非临时性机器可读介质,其中发送到另一个识别出的SN的数据消息是以下之一:
截取的数据消息,
基于应答消息从截取的消息生成的数据消息,
应答数据消息,以及
从应答数据消息生成的数据消息。
13.如权利要求1所述的非临时性机器可读介质,其中所述程序还包括用于以下的指令集:
通过隧道从识别出的服务节点接收应答数据消息;以及
基于所述应答数据消息,向与截取的数据消息相关联的目的地发送数据消息。
14.如权利要求1所述的非临时性机器可读介质,其中
SCN在具有软件转发元件(SFE)的主计算机上执行,
用于向目的地发送数据消息的指令集包括用于向SFE提供数据消息以便让SFE通过在主计算机外部操作的中间转发元件集合向目的地转发数据消息的指令集。
15.如权利要求1所述的非临时性机器可读介质,其中所述程序还包括用于在确定不必对数据消息执行服务动作之后向不是该SN组中的SN的目的地转发截取的数据消息的指令集。
16.如权利要求1所述的非临时性机器可读介质,其中
所述程序是内联交换机,
所述SCN与内联交换机一起在主计算机上执行,并且
所述内联交换机部署在SCN的出口数据路径上,沿着该数据路径,由SCN发送的数据消息被发送出主计算机。
17.如权利要求1所述的非临时性机器可读介质,其中
所述SCN不被配置为向该SN组中的SN发送数据消息,
用于确定必须对数据消息执行服务的指令集包括用于通过将数据消息的报头参数集合与服务规则的规则标识符匹配来为数据消息识别服务规则储存装置中的服务规则的指令集,其中服务规则储存装置中的多个服务规则中的每一个具有按照数据-消息报头参数集合指定的规则标识符。
18.如权利要求1所述的机器可读介质,其中
所述SN组是执行第一动作的第一SN组,并且所述隧道是第一隧道,
所述程序还包括用于以下的指令集:
确定是否应当由第二SN组的SN对截取的数据消息执行第二动作;以及
当必须执行第二动作时,识别第二SN组中的SN并且沿着到识别出的第二组SN的第二隧道发送数据消息以对截取的数据消息执行第二动作。
19.一种用于向一组服务节点(SN)集群发送与源计算节点(SCN)相关联的数据消息的方法,所述方法包括:
截取与SCN相关联的数据消息并确定是否必须对所述数据消息执行服务动作;以及
当必须对数据消息执行服务动作时,识别SN集群组中的应当接收所述数据消息的SN集群,所述SN集群组包括多个SN集群,每个SN集群包括用于执行所述服务动作的一个或多个服务节点;以及
沿着连接到所述SN集群的隧道向识别出的SN集群发送所述数据消息。
20.如权利要求19所述的方法,
其中所述截取、识别和发送由通过所述隧道与识别出的SN集群连接的设备执行;
其中识别SN集群包括从将所述设备与多个SN集群连接的多个隧道中识别所述隧道。
21.如权利要求19所述的方法,其中
所述数据消息与数据消息流相关联,
沿着隧道发送数据消息包括由于所述隧道被用来向识别出的SN集群发送具有其它隧道密钥的其它数据消息流,所以将唯一隧道密钥用于所述数据消息的流。
22.如权利要求19所述的方法,其中识别SN集群包括执行基于负载均衡标准集合从SN集群组中选择识别出的SN集群的负载均衡操作,其中所述负载均衡标准指定用于跨该SN集群组的SN集群散布用于所述服务动作的数据消息负载的特定方式。
23.如权利要求22所述的方法,其中识别出的SN集群执行另一个负载均衡操作以识别在识别出的SN集群中的服务节点来对所述数据消息执行所述服务动作。
24.如权利要求19所述的方法,其中确定必须对数据消息执行服务动作包括识别服务规则储存装置中的具有与所述数据消息的报头参数集合匹配的规则标识符的服务规则。
25.一种用于向一组服务节点(SN)发送与源计算节点(SCN)相关联的数据消息的方法,所述方法包括:
接收与SCN相关联的数据消息,对所述数据消息必须执行服务动作;
识别该SN组中的应当接收所述数据消息的SN,所述SN组包括每一个都执行所述服务动作的多个SN;以及
沿着连接到SN集群的隧道向识别出的SN发送所述数据消息。
26.一种在包括执行多个源计算节点(SCN)的多个主计算机的数据中心中实现服务模型的方法,所述方法包括:
向特定主计算机提供用于在所述特定主计算机与所述数据中心外部的两个服务提供商的至少两个服务节点之间建立至少两条隧道的参数;以及
向所述特定主计算机提供用于数据消息流集合的至少两个服务动作的集合,
每个服务动作通过引用标识符来定义,该标识符识别用于执行所述服务动作的一个服务提供商,
每个隧道用于向服务提供商节点中继与在所述特定主计算机上执行的至少一个SCN相关联的数据消息以对所述数据消息执行所述服务动作。
27.如权利要求26所述的方法,其中给所提供的服务-动作集合提供识别必须对其应用所提供的服务-动作集合的服务动作的数据消息流集合的流标识符。
28.如权利要求27所述的方法,其中提供服务-动作集合包括提供包括服务-动作集合和所述数据消息流集合的服务-动作规则。
29.如权利要求27所述的方法,其中提供服务-动作集合包括提供所述特定主计算机从其生成服务动作规则的服务-动作策略,所述服务动作规则包括服务-动作集合和所述数据消息流集合。
30.如权利要求27所述的方法,其中服务-动作集合的所提供的流标识符是由服务-处理模块使用的,所述服务-处理模块在所述特定主计算机上执行并且将SCN相关联的数据消息流的报头值与流标识符进行比较,以便识别必须对其执行服务动作集合的数据消息流。
31.如权利要求30所述的方法,其中服务-处理模块是部署在SCN的出口数据路径上以便截取和检查所述SCN发送的数据消息的过滤器。
32.如权利要求30所述的方法,其中服务-处理模块是部署在SCN的入口数据路径上以便在为SCN接收的数据消息被提供给所述SCN之前截取和检查这些消息的过滤器。
33.如权利要求26所述的方法,其中所提供的隧道-建立参数包括隧道报头分组参数。
34.如权利要求33所述的方法,其中所提供的隧道-建立参数还包括隧道密钥,所述隧道密钥用于允许多个不同的数据消息流使用从所述特定主机到特定服务提供商的一条隧道。
35.如权利要求33所述的方法,其中所提供的隧道-建立参数还包括用于生成隧道密钥的参数,所述隧道密钥用于允许多个不同的数据消息流使用从所述特定主机到特定服务提供商的一条隧道。
36.如权利要求26所述的方法,其中服务提供商标识符通过识别到服务提供商的服务节点的隧道来识别所述服务提供商。
37.如权利要求26所述的方法,其中
提供隧道-建立参数包括提供建立到第一服务提供商的多个服务节点的多条隧道的参数,以及
提供服务-动作集合包括提供服务动作标识符,所述服务动作标识符通过识别到所述第一服务提供商的所述多个服务节点的所述多条隧道的多个隧道标识符来为服务动作识别所述第一服务提供商。
38.如权利要求26所述的方法,其中
提供隧道-建立参数包括提供建立到第一服务提供商(SP)的多个服务节点的多条隧道的参数,
所述方法还包括提供用于为分发到第一SP的数据消息流在所述多条第一SP隧道中选择隧道的负载均衡标准集合,隧道的所述选择基于负载均衡标准集合以负载均衡的方式在第一SP的所述多个服务节点之间分发数据消息流。
39.如权利要求26所述的方法,其中
提供隧道-建立参数包括提供建立到执行相同服务动作的两个服务提供商的两个服务节点的至少两条隧道的参数,
所述方法还包括提供用于为数据消息流选择到第一和第二SP的两条所提供的隧道之一的选择标准集合。
40.如权利要求26所述的方法,其中所述选择标准集合包括动态评估的标准。
41.如权利要求26所述的方法,其中不同的服务提供商是在通过公共网络连接到所述特定主计算机的数据中心的不同数据中心中操作的不同服务供应商。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010711875.8A CN112291294A (zh) | 2014-09-30 | 2015-09-30 | 内联服务交换机 |
Applications Claiming Priority (19)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201462058044P | 2014-09-30 | 2014-09-30 | |
US62/058,044 | 2014-09-30 | ||
US201462083453P | 2014-11-24 | 2014-11-24 | |
US62/083,453 | 2014-11-24 | ||
US201462086136P | 2014-12-01 | 2014-12-01 | |
US62/086,136 | 2014-12-01 | ||
US201562142876P | 2015-04-03 | 2015-04-03 | |
US62/142,876 | 2015-04-03 | ||
US14/841,647 US10225137B2 (en) | 2014-09-30 | 2015-08-31 | Service node selection by an inline service switch |
US14/841,649 US11296930B2 (en) | 2014-09-30 | 2015-08-31 | Tunnel-enabled elastic service model |
US14/841,649 | 2015-08-31 | ||
US14/841,648 | 2015-08-31 | ||
US14/841,647 | 2015-08-31 | ||
US14/841,654 | 2015-08-31 | ||
US14/841,648 US10129077B2 (en) | 2014-09-30 | 2015-08-31 | Configuring and operating a XaaS model in a datacenter |
US14/841,654 US11496606B2 (en) | 2014-09-30 | 2015-08-31 | Sticky service sessions in a datacenter |
US14/841,659 | 2015-08-31 | ||
US14/841,659 US10516568B2 (en) | 2014-09-30 | 2015-08-31 | Controller driven reconfiguration of a multi-layered application or service model |
PCT/US2015/053332 WO2016054272A1 (en) | 2014-09-30 | 2015-09-30 | Inline service switch |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010711875.8A Division CN112291294A (zh) | 2014-09-30 | 2015-09-30 | 内联服务交换机 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107005584A true CN107005584A (zh) | 2017-08-01 |
CN107005584B CN107005584B (zh) | 2020-08-11 |
Family
ID=55585627
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010711875.8A Pending CN112291294A (zh) | 2014-09-30 | 2015-09-30 | 内联服务交换机 |
CN201580057270.9A Active CN107005584B (zh) | 2014-09-30 | 2015-09-30 | 用于内联服务交换机的方法、设备和存储介质 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010711875.8A Pending CN112291294A (zh) | 2014-09-30 | 2015-09-30 | 内联服务交换机 |
Country Status (4)
Country | Link |
---|---|
US (6) | US11496606B2 (zh) |
EP (1) | EP3202109B1 (zh) |
CN (2) | CN112291294A (zh) |
WO (1) | WO2016054272A1 (zh) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112673596A (zh) * | 2018-09-02 | 2021-04-16 | Vm维尔股份有限公司 | 逻辑网关处的服务插入 |
CN113454598A (zh) * | 2019-02-22 | 2021-09-28 | Vm维尔股份有限公司 | 提供具有访客vm移动性的服务 |
CN114175583A (zh) * | 2019-07-29 | 2022-03-11 | 思科技术公司 | 自愈网络中的系统资源管理 |
CN114342342A (zh) * | 2019-10-30 | 2022-04-12 | Vm维尔股份有限公司 | 跨多个云的分布式服务链 |
CN114342330A (zh) * | 2019-12-12 | 2022-04-12 | Vm维尔股份有限公司 | 收集和分析关于与dpi参数关联的流的数据 |
WO2023005745A1 (zh) * | 2021-07-26 | 2023-02-02 | 华为技术有限公司 | 报文转发方法、装置及系统、计算机可读存储介质 |
US11722559B2 (en) | 2019-10-30 | 2023-08-08 | Vmware, Inc. | Distributed service chain across multiple clouds |
US11734043B2 (en) | 2020-12-15 | 2023-08-22 | Vmware, Inc. | Providing stateful services in a scalable manner for machines executing on host computers |
US11805036B2 (en) | 2018-03-27 | 2023-10-31 | Nicira, Inc. | Detecting failure of layer 2 service using broadcast messages |
US11805056B2 (en) | 2013-05-09 | 2023-10-31 | Nicira, Inc. | Method and system for service switching using service tags |
Families Citing this family (83)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9935827B2 (en) | 2014-09-30 | 2018-04-03 | Nicira, Inc. | Method and apparatus for distributing load among a plurality of service nodes |
US10257095B2 (en) | 2014-09-30 | 2019-04-09 | Nicira, Inc. | Dynamically adjusting load balancing |
US11496606B2 (en) | 2014-09-30 | 2022-11-08 | Nicira, Inc. | Sticky service sessions in a datacenter |
US9699060B2 (en) * | 2014-12-17 | 2017-07-04 | Vmware, Inc. | Specializing virtual network device processing to avoid interrupt processing for high packet rate applications |
US10320921B2 (en) | 2014-12-17 | 2019-06-11 | Vmware, Inc. | Specializing virtual network device processing to bypass forwarding elements for high packet rate applications |
US10594743B2 (en) | 2015-04-03 | 2020-03-17 | Nicira, Inc. | Method, apparatus, and system for implementing a content switch |
US10243848B2 (en) | 2015-06-27 | 2019-03-26 | Nicira, Inc. | Provisioning logical entities in a multi-datacenter environment |
US10187310B2 (en) | 2015-10-13 | 2019-01-22 | Oracle International Corporation | System and method for efficient network isolation and load balancing in a multi-tenant cluster environment |
US10986039B2 (en) * | 2015-11-11 | 2021-04-20 | Gigamon Inc. | Traffic broker for routing data packets through sequences of in-line tools |
US9716617B1 (en) * | 2016-06-14 | 2017-07-25 | ShieldX Networks, Inc. | Dynamic, load-based, auto-scaling network security microservices architecture |
US10313362B2 (en) * | 2016-07-29 | 2019-06-04 | ShieldX Networks, Inc. | Systems and methods for real-time configurable load determination |
US10142356B2 (en) | 2016-07-29 | 2018-11-27 | ShieldX Networks, Inc. | Channel data encapsulation system and method for use with client-server data channels |
US10320572B2 (en) | 2016-08-04 | 2019-06-11 | Microsoft Technology Licensing, Llc | Scope-based certificate deployment |
US10333959B2 (en) | 2016-08-31 | 2019-06-25 | Nicira, Inc. | Use of public cloud inventory tags to configure data compute node for logical network |
US10193749B2 (en) | 2016-08-27 | 2019-01-29 | Nicira, Inc. | Managed forwarding element executing in public cloud data compute node without overlay network |
US10673893B2 (en) * | 2016-08-31 | 2020-06-02 | International Business Machines Corporation | Isolating a source of an attack that originates from a shared computing environment |
US11824863B2 (en) * | 2016-11-03 | 2023-11-21 | Nicira, Inc. | Performing services on a host |
CN108111469B (zh) * | 2016-11-24 | 2020-06-02 | 阿里巴巴集团控股有限公司 | 一种在集群中建立安全通道的方法和装置 |
US10523568B2 (en) * | 2016-12-09 | 2019-12-31 | Cisco Technology, Inc. | Adaptive load balancing for application chains |
US10530747B2 (en) * | 2017-01-13 | 2020-01-07 | Citrix Systems, Inc. | Systems and methods to run user space network stack inside docker container while bypassing container Linux network stack |
US20180375762A1 (en) * | 2017-06-21 | 2018-12-27 | Microsoft Technology Licensing, Llc | System and method for limiting access to cloud-based resources including transmission between l3 and l7 layers using ipv6 packet with embedded ipv4 addresses and metadata |
CN109218355B (zh) * | 2017-06-30 | 2021-06-15 | 华为技术有限公司 | 负载均衡引擎,客户端,分布式计算系统以及负载均衡方法 |
US10567482B2 (en) | 2017-08-24 | 2020-02-18 | Nicira, Inc. | Accessing endpoints in logical networks and public cloud service providers native networks using a single network interface and a single routing table |
US10491516B2 (en) | 2017-08-24 | 2019-11-26 | Nicira, Inc. | Packet communication between logical networks and public cloud service providers native networks using a single network interface and a single routing table |
CN111052686B (zh) | 2017-08-27 | 2022-03-29 | Nicira股份有限公司 | 在公共云中执行在线服务的方法和机器可读介质 |
CN107666446B (zh) * | 2017-09-14 | 2020-06-05 | 北京京东尚科信息技术有限公司 | 下行流量、上行流量、双向流量限制方法和装置 |
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 |
US10862753B2 (en) | 2017-12-04 | 2020-12-08 | Nicira, Inc. | High availability for stateful services in public cloud logical networks |
US10601705B2 (en) * | 2017-12-04 | 2020-03-24 | Nicira, Inc. | Failover of centralized routers in public cloud logical networks |
CN108199974B (zh) * | 2017-12-25 | 2021-09-07 | 新华三技术有限公司 | 业务流量转发管理方法、装置及网络节点 |
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 |
US10970258B2 (en) | 2018-02-23 | 2021-04-06 | Red Hat, Inc. | Managing container-image layers |
US10728174B2 (en) | 2018-03-27 | 2020-07-28 | Nicira, Inc. | Incorporating layer 2 service between two interfaces of gateway device |
US11943248B1 (en) | 2018-04-06 | 2024-03-26 | Keysight Technologies, Inc. | Methods, systems, and computer readable media for network security testing using at least one emulated server |
CN108683720B (zh) * | 2018-04-28 | 2021-12-14 | 金蝶软件(中国)有限公司 | 一种容器集群服务配置方法及装置 |
US10897392B2 (en) | 2018-06-11 | 2021-01-19 | Nicira, Inc. | Configuring a compute node to perform services on a host |
US11283676B2 (en) * | 2018-06-11 | 2022-03-22 | Nicira, Inc. | Providing shared memory for access by multiple network service containers executing on single service machine |
US10812337B2 (en) | 2018-06-15 | 2020-10-20 | Vmware, Inc. | Hierarchical API for a SDDC |
US10942788B2 (en) | 2018-06-15 | 2021-03-09 | Vmware, Inc. | Policy constraint framework for an sddc |
US11343229B2 (en) | 2018-06-28 | 2022-05-24 | Vmware, Inc. | Managed forwarding element detecting invalid packet addresses |
US10708163B1 (en) * | 2018-07-13 | 2020-07-07 | Keysight Technologies, Inc. | Methods, systems, and computer readable media for automatic configuration and control of remote inline network monitoring probe |
US11196591B2 (en) | 2018-08-24 | 2021-12-07 | Vmware, Inc. | Centralized overlay gateway in public cloud |
US11086700B2 (en) | 2018-08-24 | 2021-08-10 | Vmware, Inc. | Template driven approach to deploy a multi-segmented application in an SDDC |
US11374794B2 (en) | 2018-08-24 | 2022-06-28 | Vmware, Inc. | Transitive routing in public cloud |
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 |
CN109104377B (zh) * | 2018-09-21 | 2022-07-15 | 深圳前海微众银行股份有限公司 | 长连接负载均衡方法、设备、系统及计算机可读存储介质 |
US11470176B2 (en) * | 2019-01-29 | 2022-10-11 | Cisco Technology, Inc. | Efficient and flexible load-balancing for clusters of caches under latency constraint |
CN110187912B (zh) * | 2019-05-16 | 2022-03-29 | 华为技术有限公司 | 一种节点选择方法和装置 |
US11582120B2 (en) | 2019-05-30 | 2023-02-14 | Vmware, Inc. | Partitioning health monitoring in a global server load balancing system |
US11411843B2 (en) * | 2019-08-14 | 2022-08-09 | Verizon Patent And Licensing Inc. | Method and system for packet inspection in virtual network service chains |
CN110808945B (zh) * | 2019-09-11 | 2020-07-28 | 浙江大学 | 一种基于元学习的小样本场景下网络入侵检测方法 |
US20220247719A1 (en) * | 2019-09-24 | 2022-08-04 | Pribit Technology, Inc. | Network Access Control System And Method Therefor |
US11283717B2 (en) | 2019-10-30 | 2022-03-22 | Vmware, Inc. | Distributed fault tolerant service chain |
US11418584B2 (en) * | 2019-11-14 | 2022-08-16 | Vmware, Inc. | Inter-service communications |
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 |
EP4078901A4 (en) | 2020-04-01 | 2023-10-11 | VMWare, Inc. | AUTOMATIC DEPLOYMENT OF NETWORK ELEMENTS FOR HETEROGENEOUS COMPUTING ELEMENTS |
US11336556B2 (en) | 2020-04-06 | 2022-05-17 | Vmware, Inc. | Route exchange between logical routers in different datacenters |
US11777793B2 (en) | 2020-04-06 | 2023-10-03 | Vmware, Inc. | Location criteria for security groups |
US11088902B1 (en) | 2020-04-06 | 2021-08-10 | Vmware, Inc. | Synchronization of logical network state between global and local managers |
US11374817B2 (en) | 2020-04-06 | 2022-06-28 | Vmware, Inc. | Determining span of logical network element |
US11882000B2 (en) | 2020-04-06 | 2024-01-23 | VMware LLC | Network management system for federated multi-site logical network |
US11368387B2 (en) | 2020-04-06 | 2022-06-21 | Vmware, Inc. | Using router as service node through logical service plane |
CN111522661A (zh) * | 2020-04-22 | 2020-08-11 | 腾讯科技(深圳)有限公司 | 一种微服务管理系统、部署方法及相关设备 |
US11362863B2 (en) | 2020-07-21 | 2022-06-14 | Vmware, Inc. | Handling packets travelling from logical service routers (SRs) for active-active stateful service insertion |
US11803408B2 (en) | 2020-07-29 | 2023-10-31 | Vmware, Inc. | Distributed network plugin agents for container networking |
US11863352B2 (en) | 2020-07-30 | 2024-01-02 | Vmware, Inc. | Hierarchical networking for nested container clusters |
US11601474B2 (en) | 2020-09-28 | 2023-03-07 | Vmware, Inc. | Network virtualization infrastructure with divided user responsibilities |
CN112256437A (zh) * | 2020-11-10 | 2021-01-22 | 网易(杭州)网络有限公司 | 一种任务分发方法及装置 |
US11611625B2 (en) | 2020-12-15 | 2023-03-21 | Vmware, Inc. | Providing stateful services in a scalable manner for machines executing on host computers |
US11882052B2 (en) * | 2021-01-20 | 2024-01-23 | Vmware, Inc. | Updating flow cache information for packet processing |
US11811861B2 (en) * | 2021-05-17 | 2023-11-07 | Vmware, Inc. | Dynamically updating load balancing criteria |
US11606254B2 (en) | 2021-06-11 | 2023-03-14 | Vmware, Inc. | Automatic configuring of VLAN and overlay logical switches for container secondary interfaces |
US11824780B2 (en) * | 2021-07-22 | 2023-11-21 | Vmware, Inc. | Managing tunnel interface selection between gateways in a computing environment |
US20230036071A1 (en) * | 2021-07-27 | 2023-02-02 | Vmware, Inc. | Managing edge gateway selection using exchanged hash information |
US11902245B2 (en) | 2022-01-14 | 2024-02-13 | VMware LLC | Per-namespace IP address management method for container networks |
US11652909B1 (en) * | 2022-03-10 | 2023-05-16 | International Business Machines Corporation | TCP session closure in container orchestration system |
US11848910B1 (en) | 2022-11-11 | 2023-12-19 | Vmware, Inc. | Assigning stateful pods fixed IP addresses depending on unique pod identity |
US11831511B1 (en) | 2023-01-17 | 2023-11-28 | Vmware, Inc. | Enforcing network policies in heterogeneous systems |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1689369A (zh) * | 2002-10-08 | 2005-10-26 | 诺基亚公司 | 用于经由接入网建立连接的方法和系统 |
US20050249199A1 (en) * | 1999-07-02 | 2005-11-10 | Cisco Technology, Inc., A California Corporation | Load balancing using distributed forwarding agents with application based feedback for different virtual machines |
US20090327464A1 (en) * | 2008-06-26 | 2009-12-31 | International Business Machines Corporation | Load Balanced Data Processing Performed On An Application Message Transmitted Between Compute Nodes |
CN103795805A (zh) * | 2014-02-27 | 2014-05-14 | 中国科学技术大学苏州研究院 | 基于sdn的分布式服务器负载均衡方法 |
Family Cites Families (613)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6154448A (en) | 1997-06-20 | 2000-11-28 | Telefonaktiebolaget Lm Ericsson (Publ) | Next hop loopback |
US6006264A (en) | 1997-08-01 | 1999-12-21 | Arrowpoint Communications, Inc. | Method and system for directing a flow between a client and a server |
US6104700A (en) | 1997-08-29 | 2000-08-15 | Extreme Networks | Policy based quality of service |
US6779030B1 (en) | 1997-10-06 | 2004-08-17 | Worldcom, Inc. | Intelligent network |
US6128279A (en) | 1997-10-06 | 2000-10-03 | Web Balance, Inc. | System for balancing loads among network servers |
US6665702B1 (en) | 1998-07-15 | 2003-12-16 | Radware Ltd. | Load balancing |
US8234477B2 (en) | 1998-07-31 | 2012-07-31 | Kom Networks, Inc. | Method and system for providing restricted access to a storage medium |
US6826694B1 (en) * | 1998-10-22 | 2004-11-30 | At&T Corp. | High resolution access control |
US6760775B1 (en) | 1999-03-05 | 2004-07-06 | At&T Corp. | System, method and apparatus for network service load and reliability management |
US7013389B1 (en) | 1999-09-29 | 2006-03-14 | Cisco Technology, Inc. | Method and apparatus for creating a secure communication channel among multiple event service nodes |
WO2001040903A2 (en) | 1999-12-06 | 2001-06-07 | Warp Solutions, Inc. | System and method for enhancing operation of a web server cluster |
US6880089B1 (en) | 2000-03-31 | 2005-04-12 | Avaya Technology Corp. | Firewall clustering for multiple network servers |
US8538843B2 (en) | 2000-07-17 | 2013-09-17 | Galactic Computing Corporation Bvi/Bc | Method and system for operating an E-commerce service provider |
AU2001288719A1 (en) | 2000-09-01 | 2002-03-13 | International Interactive Commerce, Ltd. | System and method for collaboration using web browsers |
US7389358B1 (en) | 2000-09-13 | 2008-06-17 | Fortinet, Inc. | Distributed virtual system to support managed, network-based services |
US6985956B2 (en) | 2000-11-02 | 2006-01-10 | Sun Microsystems, Inc. | Switching system |
US7296291B2 (en) | 2000-12-18 | 2007-11-13 | Sun Microsystems, Inc. | Controlled information flow between communities via a firewall |
US6697206B2 (en) | 2000-12-19 | 2004-02-24 | Imation Corp. | Tape edge monitoring |
US7280540B2 (en) * | 2001-01-09 | 2007-10-09 | Stonesoft Oy | Processing of data packets within a network element cluster |
US7002967B2 (en) | 2001-05-18 | 2006-02-21 | Denton I Claude | Multi-protocol networking processor with data traffic support spanning local, regional and wide area networks |
US6944678B2 (en) | 2001-06-18 | 2005-09-13 | Transtech Networks Usa, Inc. | Content-aware application switch and methods thereof |
US20030105812A1 (en) | 2001-08-09 | 2003-06-05 | Gigamedia Access Corporation | Hybrid system architecture for secure peer-to-peer-communications |
US7209977B2 (en) | 2001-10-01 | 2007-04-24 | International Business Machines Corporation | Method and apparatus for content-aware web switching |
US8095668B2 (en) | 2001-11-09 | 2012-01-10 | Rockstar Bidco Lp | Middlebox control |
TW544601B (en) | 2001-11-20 | 2003-08-01 | Ind Tech Res Inst | Method and structure for forming web server cluster by conversion and dispatching of web page documents |
US7379465B2 (en) | 2001-12-07 | 2008-05-27 | Nortel Networks Limited | Tunneling scheme optimized for use in virtual private networks |
US7239639B2 (en) | 2001-12-27 | 2007-07-03 | 3Com Corporation | System and method for dynamically constructing packet classification rules |
US8156216B1 (en) | 2002-01-30 | 2012-04-10 | Adobe Systems Incorporated | Distributed data collection and aggregation |
US7088718B1 (en) | 2002-03-19 | 2006-08-08 | Cisco Technology, Inc. | Server load balancing using IP option field approach to identify route to selected server |
US20030236813A1 (en) | 2002-06-24 | 2003-12-25 | Abjanic John B. | Method and apparatus for off-load processing of a message stream |
US7086061B1 (en) | 2002-08-01 | 2006-08-01 | Foundry Networks, Inc. | Statistical tracking of global server load balancing for selecting the best network address from ordered list of network addresses based on a set of performance metrics |
US7480737B2 (en) | 2002-10-25 | 2009-01-20 | International Business Machines Corporation | Technique for addressing a cluster of network servers |
US20040215703A1 (en) | 2003-02-18 | 2004-10-28 | Xiping Song | System supporting concurrent operation of multiple executable application operation sessions |
US7388842B1 (en) | 2003-03-13 | 2008-06-17 | At&T Corp. | Method and apparatus for efficient routing of variable traffic |
US20050022017A1 (en) | 2003-06-24 | 2005-01-27 | Maufer Thomas A. | Data structures and state tracking for network protocol processing |
US20090299791A1 (en) | 2003-06-25 | 2009-12-03 | Foundry Networks, Inc. | Method and system for management of licenses |
US7483374B2 (en) | 2003-08-05 | 2009-01-27 | Scalent Systems, Inc. | Method and apparatus for achieving dynamic capacity and high availability in multi-stage data networks using adaptive flow-based routing |
US7315693B2 (en) | 2003-10-22 | 2008-01-01 | Intel Corporation | Dynamic route discovery for optical switched networks |
US7447775B1 (en) | 2003-11-07 | 2008-11-04 | Cisco Technology, Inc. | Methods and apparatus for supporting transmission of streaming data |
US7496955B2 (en) | 2003-11-24 | 2009-02-24 | Cisco Technology, Inc. | Dual mode firewall |
US7962914B2 (en) | 2003-11-25 | 2011-06-14 | Emc Corporation | Method and apparatus for load balancing of distributed processing units based on performance metrics |
EP1538777A1 (en) * | 2003-12-01 | 2005-06-08 | Alcatel | Configuration management device for a self-configurable network equipment of a communication network provided with equipment configuration parameter consistency analysis module |
US8572249B2 (en) | 2003-12-10 | 2013-10-29 | Aventail Llc | Network appliance for balancing load and platform services |
US7370100B1 (en) | 2003-12-10 | 2008-05-06 | Foundry Networks, Inc. | Method and apparatus for load balancing based on packet header content |
GB0402739D0 (en) | 2004-02-09 | 2004-03-10 | Saviso Group Ltd | Methods and apparatus for routing in a network |
US8223634B2 (en) | 2004-02-18 | 2012-07-17 | Fortinet, Inc. | Mechanism for implementing load balancing in a network |
US8484348B2 (en) | 2004-03-05 | 2013-07-09 | Rockstar Consortium Us Lp | Method and apparatus for facilitating fulfillment of web-service requests on a communication network |
EP1732272B1 (en) | 2004-03-30 | 2014-03-19 | Panasonic Corporation | Communication device and communication system |
US8923292B2 (en) | 2004-04-06 | 2014-12-30 | Rockstar Consortium Us Lp | Differential forwarding in address-based carrier networks |
JP2005311863A (ja) | 2004-04-23 | 2005-11-04 | Hitachi Ltd | トラフィック分散制御方法、制御装置及びネットワークシステム |
GB2418110B (en) | 2004-09-14 | 2006-09-06 | 3Com Corp | Method and apparatus for controlling traffic between different entities on a network |
US7805517B2 (en) | 2004-09-15 | 2010-09-28 | Cisco Technology, Inc. | System and method for load balancing a communications network |
US8145908B1 (en) | 2004-10-29 | 2012-03-27 | Akamai Technologies, Inc. | Web content defacement protection system |
US7475274B2 (en) | 2004-11-17 | 2009-01-06 | Raytheon Company | Fault tolerance and recovery in a high-performance computing (HPC) system |
US8028334B2 (en) | 2004-12-14 | 2011-09-27 | International Business Machines Corporation | Automated generation of configuration elements of an information technology system |
CA2594020C (en) | 2004-12-22 | 2014-12-09 | Wake Forest University | Method, systems, and computer program products for implementing function-parallel network firewall |
US20060155862A1 (en) | 2005-01-06 | 2006-07-13 | Hari Kathi | Data traffic load balancing based on application layer messages |
JP4394590B2 (ja) * | 2005-02-22 | 2010-01-06 | 株式会社日立コミュニケーションテクノロジー | パケット中継装置および通信帯域制御方法 |
US7499463B1 (en) | 2005-04-22 | 2009-03-03 | Sun Microsystems, Inc. | Method and apparatus for enforcing bandwidth utilization of a virtual serialization queue |
GB0508350D0 (en) | 2005-04-26 | 2005-06-01 | Great Lakes Chemical Europ | Stabilized crosslinked polyolefin compositions |
CA2615659A1 (en) | 2005-07-22 | 2007-05-10 | Yogesh Chunilal Rathod | Universal knowledge management and desktop search system |
US7721299B2 (en) | 2005-08-05 | 2010-05-18 | Red Hat, Inc. | Zero-copy network I/O for virtual hosts |
US8270413B2 (en) | 2005-11-28 | 2012-09-18 | Cisco Technology, Inc. | Method and apparatus for self-learning of VPNS from combination of unidirectional tunnels in MPLS/VPN networks |
US9686183B2 (en) * | 2005-12-06 | 2017-06-20 | Zarbaña Digital Fund Llc | Digital object routing based on a service request |
US7660296B2 (en) | 2005-12-30 | 2010-02-09 | Akamai Technologies, Inc. | Reliable, high-throughput, high-performance transport and routing mechanism for arbitrary data flows |
WO2007099276A1 (en) | 2006-03-02 | 2007-09-07 | British Telecommunications Public Limited Company | Message processing methods and systems |
US20070260750A1 (en) | 2006-03-09 | 2007-11-08 | Microsoft Corporation | Adaptable data connector |
US20070214282A1 (en) | 2006-03-13 | 2007-09-13 | Microsoft Corporation | Load balancing via rotation of cluster identity |
US20070248091A1 (en) | 2006-04-24 | 2007-10-25 | Mohamed Khalid | Methods and apparatus for tunnel stitching in a network |
US8838756B2 (en) | 2009-07-27 | 2014-09-16 | Vmware, Inc. | Management and implementation of enclosed local networks in a virtual lab |
US8892706B1 (en) | 2010-06-21 | 2014-11-18 | Vmware, Inc. | Private ethernet overlay networks over a shared ethernet in a virtual environment |
US7693985B2 (en) | 2006-06-09 | 2010-04-06 | Cisco Technology, Inc. | Technique for dispatching data packets to service control engines |
US7761596B2 (en) | 2006-06-30 | 2010-07-20 | Telefonaktiebolaget L M Ericsson (Publ) | Router and method for server load balancing |
WO2008018969A1 (en) | 2006-08-04 | 2008-02-14 | Parallel Computers Technology, Inc. | Apparatus and method of optimizing database clustering with zero transaction loss |
US7580417B2 (en) | 2006-08-07 | 2009-08-25 | Cisco Technology, Inc. | Method and apparatus for load balancing over virtual network links |
US8707383B2 (en) | 2006-08-16 | 2014-04-22 | International Business Machines Corporation | Computer workload management with security policy enforcement |
US8312120B2 (en) | 2006-08-22 | 2012-11-13 | Citrix Systems, Inc. | Systems and methods for providing dynamic spillover of virtual servers based on bandwidth |
GB2443229B (en) | 2006-08-23 | 2009-10-14 | Cramer Systems Ltd | Capacity management for data networks |
US8204982B2 (en) | 2006-09-14 | 2012-06-19 | Quova, Inc. | System and method of middlebox detection and characterization |
US8649264B2 (en) | 2006-10-04 | 2014-02-11 | Qualcomm Incorporated | IP flow-based load balancing over a plurality of wireless network links |
JP2008104027A (ja) | 2006-10-19 | 2008-05-01 | Fujitsu Ltd | パケット情報収集装置およびパケット情報収集プログラム |
US8185893B2 (en) | 2006-10-27 | 2012-05-22 | Hewlett-Packard Development Company, L.P. | Starting up at least one virtual machine in a physical machine by a load balancer |
US8849746B2 (en) * | 2006-12-19 | 2014-09-30 | Teradata Us, Inc. | High-throughput extract-transform-load (ETL) of program events for subsequent analysis |
US20160277261A9 (en) | 2006-12-29 | 2016-09-22 | Prodea Systems, Inc. | Multi-services application gateway and system employing the same |
US20080189769A1 (en) | 2007-02-01 | 2008-08-07 | Martin Casado | Secure network switching infrastructure |
US7865614B2 (en) | 2007-02-12 | 2011-01-04 | International Business Machines Corporation | Method and apparatus for load balancing with server state change awareness |
JP5016063B2 (ja) | 2007-02-22 | 2012-09-05 | テレフオンアクチーボラゲット エル エム エリクソン(パブル) | 整合性のとれた耐障害性分散ハッシュテーブル(dht)オーバレイネットワーク |
US20080225714A1 (en) | 2007-03-12 | 2008-09-18 | Telefonaktiebolaget Lm Ericsson (Publ) | Dynamic load balancing |
US8144709B2 (en) | 2007-04-06 | 2012-03-27 | International Business Machines Corporation | Method, system and computer processing an IP packet, routing a structured data carrier, preventing broadcast storms, load-balancing and converting a full broadcast IP packet |
US8230493B2 (en) | 2007-05-02 | 2012-07-24 | Cisco Technology, Inc. | Allowing differential processing of encrypted tunnels |
US7898959B1 (en) | 2007-06-28 | 2011-03-01 | Marvell Israel (Misl) Ltd. | Method for weighted load-balancing among network interfaces |
US8000329B2 (en) | 2007-06-29 | 2011-08-16 | Alcatel Lucent | Open platform architecture for integrating multiple heterogeneous network functions |
US20090003375A1 (en) | 2007-06-29 | 2009-01-01 | Martin Havemann | Network system having an extensible control plane |
US7843914B2 (en) | 2007-06-29 | 2010-11-30 | Alcatel-Lucent | Network system having an extensible forwarding plane |
US8898331B2 (en) | 2007-07-09 | 2014-11-25 | Hewlett-Packard Development Company, L.P. | Method, network and computer program for processing a content request |
US7895425B2 (en) | 2007-08-03 | 2011-02-22 | Cisco Technology, Inc. | Operation, administration and maintenance (OAM) in a service insertion architecture (SIA) |
US20090063706A1 (en) | 2007-08-30 | 2009-03-05 | International Business Machines Corporation | Combined Layer 2 Virtual MAC Address with Layer 3 IP Address Routing |
US8201219B2 (en) | 2007-09-24 | 2012-06-12 | Bridgewater Systems Corp. | Systems and methods for server load balancing using authentication, authorization, and accounting protocols |
US8874789B1 (en) | 2007-09-28 | 2014-10-28 | Trend Micro Incorporated | Application based routing arrangements and method thereof |
US8553537B2 (en) | 2007-11-09 | 2013-10-08 | International Business Machines Corporation | Session-less load balancing of client traffic across servers in a server group |
US7855982B2 (en) | 2007-11-19 | 2010-12-21 | Rajesh Ramankutty | Providing services to packet flows in a network |
EP2232808A4 (en) | 2007-12-17 | 2012-10-17 | Indian Inst Technology Bombay | ARCHITECTURAL STRUCTURE OF A COMMUNICATION NETWORK AND METHOD OF ESTABLISHING A QOS CONNECTION |
EP2248003A1 (en) | 2007-12-31 | 2010-11-10 | Netapp, Inc. | System and method for automatic storage load balancing in virtual server environments |
US9043862B2 (en) | 2008-02-06 | 2015-05-26 | Qualcomm Incorporated | Policy control for encapsulated data flows |
US8175863B1 (en) | 2008-02-13 | 2012-05-08 | Quest Software, Inc. | Systems and methods for analyzing performance of virtual environments |
US8521879B1 (en) | 2008-03-11 | 2013-08-27 | United Services Automobile Assocation (USAA) | Systems and methods for a load balanced interior gateway protocol intranet |
US7808919B2 (en) | 2008-03-18 | 2010-10-05 | Cisco Technology, Inc. | Network monitoring using a proxy |
US20090249471A1 (en) | 2008-03-27 | 2009-10-01 | Moshe Litvin | Reversible firewall policies |
US9762692B2 (en) | 2008-04-04 | 2017-09-12 | Level 3 Communications, Llc | Handling long-tail content in a content delivery network (CDN) |
US20110035494A1 (en) * | 2008-04-15 | 2011-02-10 | Blade Network Technologies | Network virtualization for a virtualized server data center environment |
US9749404B2 (en) | 2008-04-17 | 2017-08-29 | Radware, Ltd. | Method and system for load balancing over a cluster of authentication, authorization and accounting (AAA) servers |
US8339959B1 (en) | 2008-05-20 | 2012-12-25 | Juniper Networks, Inc. | Streamlined packet forwarding using dynamic filters for routing and security in a shared forwarding plane |
US8849971B2 (en) | 2008-05-28 | 2014-09-30 | Red Hat, Inc. | Load balancing in cloud-based networks |
US8996683B2 (en) | 2008-06-09 | 2015-03-31 | Microsoft Technology Licensing, Llc | Data center without structural bottlenecks |
US8160063B2 (en) | 2008-06-09 | 2012-04-17 | Microsoft Corporation | Data center interconnect and traffic engineering |
US8578483B2 (en) | 2008-07-31 | 2013-11-05 | Carnegie Mellon University | Systems and methods for preventing unauthorized modification of an operating system |
US20100036903A1 (en) | 2008-08-11 | 2010-02-11 | Microsoft Corporation | Distributed load balancer |
US8706878B1 (en) | 2008-08-21 | 2014-04-22 | United Services Automobile Association | Preferential loading in data centers |
US8873399B2 (en) | 2008-09-03 | 2014-10-28 | Nokia Siemens Networks Oy | Gateway network element, a method, and a group of load balanced access points configured for load balancing in a communications network |
US8228929B2 (en) | 2008-10-24 | 2012-07-24 | Juniper Networks, Inc. | Flow consistent dynamic load balancing |
US8078903B1 (en) | 2008-11-25 | 2011-12-13 | Cisco Technology, Inc. | Automatic load-balancing and seamless failover of data flows in storage media encryption (SME) |
US8171124B2 (en) | 2008-11-25 | 2012-05-01 | Citrix Systems, Inc. | Systems and methods for GSLB remote service monitoring |
US9191293B2 (en) | 2008-12-22 | 2015-11-17 | Telefonaktiebolaget L M Ericsson (Publ) | Method and device for handling of connections between a client and a server via a communication network |
US8442043B2 (en) | 2008-12-29 | 2013-05-14 | Cisco Technology, Inc. | Service selection mechanism in service insertion architecture data plane |
US8224885B1 (en) | 2009-01-26 | 2012-07-17 | Teradici Corporation | Method and system for remote computing session management |
US7948986B1 (en) | 2009-02-02 | 2011-05-24 | Juniper Networks, Inc. | Applying services within MPLS networks |
US20100223364A1 (en) | 2009-02-27 | 2010-09-02 | Yottaa Inc | System and method for network traffic management and load balancing |
US20100235915A1 (en) * | 2009-03-12 | 2010-09-16 | Nasir Memon | Using host symptoms, host roles, and/or host reputation for detection of host infection |
US8094575B1 (en) | 2009-03-24 | 2012-01-10 | Juniper Networks, Inc. | Routing protocol extension for network acceleration service-aware path selection within computer networks |
JP4811489B2 (ja) | 2009-03-27 | 2011-11-09 | 日本電気株式会社 | サーバシステム、集合型サーバ装置及びmacアドレス管理方法 |
US20100254385A1 (en) | 2009-04-07 | 2010-10-07 | Cisco Technology, Inc. | Service Insertion Architecture (SIA) in a Virtual Private Network (VPN) Aware Network |
CN101873572B (zh) | 2009-04-27 | 2012-08-29 | 中国移动通信集团公司 | 基于PMIPv6的数据传输方法、系统及相关网络设备 |
US8261266B2 (en) | 2009-04-30 | 2012-09-04 | Microsoft Corporation | Deploying a virtual machine having a virtual hardware configuration matching an improved hardware profile with respect to execution of an application |
EP2425341B1 (en) | 2009-05-01 | 2018-07-11 | Citrix Systems, Inc. | Systems and methods for establishing a cloud bridge between virtual storage resources |
US9479358B2 (en) | 2009-05-13 | 2016-10-25 | International Business Machines Corporation | Managing graphics load balancing strategies |
CN101594358B (zh) | 2009-06-29 | 2012-09-05 | 北京航空航天大学 | 三层交换方法、装置、系统和宿主机 |
US20110040893A1 (en) | 2009-08-14 | 2011-02-17 | Broadcom Corporation | Distributed Internet caching via multiple node caching management |
US20110055845A1 (en) | 2009-08-31 | 2011-03-03 | Thyagarajan Nandagopal | Technique for balancing loads in server clusters |
CN102025702B (zh) | 2009-09-17 | 2014-11-05 | 中兴通讯股份有限公司 | 基于身份标识和位置分离架构的网络及其骨干网和网元 |
CN102025608B (zh) | 2009-09-17 | 2013-03-20 | 中兴通讯股份有限公司 | 通信方法、通信过程中的数据报文转发方法及通信节点 |
US8451735B2 (en) | 2009-09-28 | 2013-05-28 | Symbol Technologies, Inc. | Systems and methods for dynamic load balancing in a wireless network |
US8811412B2 (en) | 2009-10-15 | 2014-08-19 | International Business Machines Corporation | Steering data communications packets among service applications with server selection modulus values |
JPWO2011049135A1 (ja) | 2009-10-23 | 2013-03-14 | 日本電気株式会社 | ネットワークシステムとその制御方法、及びコントローラ |
CN101729412B (zh) | 2009-11-05 | 2012-03-14 | 北京超图软件股份有限公司 | 地理信息服务的分布式层次集群方法和系统 |
WO2011060376A1 (en) | 2009-11-16 | 2011-05-19 | Interdigital Patent Holdings, Inc. | Coordination of silent periods for dynamic spectrum manager (dsm) |
CN101714916B (zh) | 2009-11-26 | 2013-06-05 | 华为数字技术(成都)有限公司 | 一种备份方法、设备和系统 |
US8832683B2 (en) | 2009-11-30 | 2014-09-09 | Red Hat Israel, Ltd. | Using memory-related metrics of host machine for triggering load balancing that migrate virtual machine |
US8615009B1 (en) | 2010-01-25 | 2013-12-24 | Juniper Networks, Inc. | Interface for extending service capabilities of a network device |
JP5648926B2 (ja) | 2010-02-01 | 2015-01-07 | 日本電気株式会社 | ネットワークシステム、コントローラ、ネットワーク制御方法 |
CN102158386B (zh) | 2010-02-11 | 2015-06-03 | 威睿公司 | 系统管理程序级的分布式负载平衡 |
US8320399B2 (en) | 2010-02-26 | 2012-11-27 | Net Optics, Inc. | Add-on module and methods thereof |
US8996610B1 (en) | 2010-03-15 | 2015-03-31 | Salesforce.Com, Inc. | Proxy system, method and computer program product for utilizing an identifier of a request to route the request to a networked device |
US8971345B1 (en) | 2010-03-22 | 2015-03-03 | Riverbed Technology, Inc. | Method and apparatus for scheduling a heterogeneous communication flow |
WO2011120000A2 (en) | 2010-03-26 | 2011-09-29 | Citrix Systems, Inc. | Systems and methods for link load balancing on a multi-core device |
US8243598B2 (en) | 2010-04-26 | 2012-08-14 | International Business Machines Corporation | Load-balancing via modulus distribution and TCP flow redirection due to server overload |
US8504718B2 (en) | 2010-04-28 | 2013-08-06 | Futurewei Technologies, Inc. | System and method for a context layer switch |
US8811398B2 (en) | 2010-04-30 | 2014-08-19 | Hewlett-Packard Development Company, L.P. | Method for routing data packets using VLANs |
EP4027611A1 (en) * | 2010-05-03 | 2022-07-13 | Avago Technologies International Sales Pte. Limited | Virtual cluster switching |
US8533337B2 (en) | 2010-05-06 | 2013-09-10 | Citrix Systems, Inc. | Continuous upgrading of computers in a load balanced environment |
US8499093B2 (en) | 2010-05-14 | 2013-07-30 | Extreme Networks, Inc. | Methods, systems, and computer readable media for stateless load balancing of network traffic flows |
US20110317708A1 (en) | 2010-06-28 | 2011-12-29 | Alcatel-Lucent Usa, Inc. | Quality of service control for mpls user access |
WO2012006190A1 (en) | 2010-06-29 | 2012-01-12 | Huawei Technologies Co., Ltd. | Delegate gateways and proxy for target hosts in large layer 2 and address resolution with duplicated internet protocol addresses |
US8281033B1 (en) | 2010-06-29 | 2012-10-02 | Emc Corporation | Techniques for path selection |
JP5716302B2 (ja) | 2010-06-30 | 2015-05-13 | ソニー株式会社 | 情報処理装置、コンテンツ提供方法及びプログラム |
JP5668342B2 (ja) | 2010-07-07 | 2015-02-12 | 富士通株式会社 | コンテンツ変換プログラム、コンテンツ変換システム及びコンテンツ変換サーバ |
US20120195196A1 (en) | 2010-08-11 | 2012-08-02 | Rajat Ghai | SYSTEM AND METHOD FOR QoS CONTROL OF IP FLOWS IN MOBILE NETWORKS |
US8745128B2 (en) | 2010-09-01 | 2014-06-03 | Edgecast Networks, Inc. | Optimized content distribution based on metrics derived from the end user |
JP5476261B2 (ja) | 2010-09-14 | 2014-04-23 | 株式会社日立製作所 | マルチテナント型情報処理システム、管理サーバ及び構成管理方法 |
US8838830B2 (en) | 2010-10-12 | 2014-09-16 | Sap Portals Israel Ltd | Optimizing distributed computer networks |
US8681661B2 (en) | 2010-10-25 | 2014-03-25 | Force10 Networks, Inc. | Limiting MAC address learning on access network switches |
US8533285B2 (en) | 2010-12-01 | 2013-09-10 | Cisco Technology, Inc. | Directing data flows in data centers with clustering services |
US8699499B2 (en) | 2010-12-08 | 2014-04-15 | At&T Intellectual Property I, L.P. | Methods and apparatus to provision cloud computing network elements |
JP2012129648A (ja) * | 2010-12-13 | 2012-07-05 | Fujitsu Ltd | サーバ装置、管理装置、転送先アドレス設定プログラムおよび仮想ネットワークシステム |
US8755283B2 (en) | 2010-12-17 | 2014-06-17 | Microsoft Corporation | Synchronizing state among load balancer components |
US8804720B1 (en) | 2010-12-22 | 2014-08-12 | Juniper Networks, Inc. | Pass-through multicast admission control signaling |
IL210897A (en) | 2011-01-27 | 2017-12-31 | Verint Systems Ltd | Systems and methods for managing traffic flow table |
US10225335B2 (en) | 2011-02-09 | 2019-03-05 | Cisco Technology, Inc. | Apparatus, systems and methods for container based service deployment |
US9191327B2 (en) | 2011-02-10 | 2015-11-17 | Varmour Networks, Inc. | Distributed service processing of network gateways using virtual machines |
US8737210B2 (en) | 2011-03-09 | 2014-05-27 | Telefonaktiebolaget L M Ericsson (Publ) | Load balancing SCTP associations using VTAG mediation |
US8676980B2 (en) | 2011-03-22 | 2014-03-18 | Cisco Technology, Inc. | Distributed load balancer in a virtual machine environment |
US8799997B2 (en) | 2011-04-18 | 2014-08-05 | Bank Of America Corporation | Secure network cloud architecture |
US8743885B2 (en) | 2011-05-03 | 2014-06-03 | Cisco Technology, Inc. | Mobile service routing in a network environment |
US20120303809A1 (en) | 2011-05-25 | 2012-11-29 | Microsoft Corporation | Offloading load balancing packet modification |
US9104460B2 (en) | 2011-05-31 | 2015-08-11 | Red Hat, Inc. | Inter-cloud live migration of virtualization systems |
US8539025B2 (en) | 2011-06-07 | 2013-09-17 | Clearcube Technology, Inc. | Zero client device with integrated serial or parallel ports |
US9298910B2 (en) | 2011-06-08 | 2016-03-29 | Mcafee, Inc. | System and method for virtual partition monitoring |
US8923294B2 (en) | 2011-06-28 | 2014-12-30 | Polytechnic Institute Of New York University | Dynamically provisioning middleboxes |
US11233709B2 (en) | 2011-07-15 | 2022-01-25 | Inetco Systems Limited | Method and system for monitoring performance of an application system |
US20130021942A1 (en) | 2011-07-18 | 2013-01-24 | Cisco Technology, Inc. | Granular Control of Multicast Delivery Services for Layer-2 Interconnect Solutions |
US9424144B2 (en) | 2011-07-27 | 2016-08-23 | Microsoft Technology Licensing, Llc | Virtual machine migration to minimize packet loss in virtualized network |
WO2013020126A1 (en) | 2011-08-04 | 2013-02-07 | Midokura Pte. Ltd. | System and method for implementing and managing virtual networks |
CN107071087B (zh) | 2011-08-17 | 2021-01-26 | Nicira股份有限公司 | 逻辑l3路由 |
US8856518B2 (en) | 2011-09-07 | 2014-10-07 | Microsoft Corporation | Secure and efficient offloading of network policies to network interface cards |
US9319459B2 (en) * | 2011-09-19 | 2016-04-19 | Cisco Technology, Inc. | Services controlled session based flow interceptor |
US9104497B2 (en) | 2012-11-07 | 2015-08-11 | Yahoo! Inc. | Method and system for work load balancing |
US10200493B2 (en) | 2011-10-17 | 2019-02-05 | Microsoft Technology Licensing, Llc | High-density multi-tenant distributed cache as a service |
WO2013062999A2 (en) | 2011-10-24 | 2013-05-02 | Interdigital Patent Holdings, Inc. | Methods, systems and apparatuses for application service layer (asl) inter-networking |
US8717934B2 (en) | 2011-10-25 | 2014-05-06 | Cisco Technology, Inc. | Multicast source move detection for layer-2 interconnect solutions |
EP3373560B1 (en) | 2011-11-15 | 2022-08-10 | Nicira Inc. | Network control system for configuring middleboxes |
US8767737B2 (en) | 2011-11-30 | 2014-07-01 | Industrial Technology Research Institute | Data center network system and packet forwarding method thereof |
US20130159487A1 (en) | 2011-12-14 | 2013-06-20 | Microsoft Corporation | Migration of Virtual IP Addresses in a Failover Cluster |
US20130160024A1 (en) | 2011-12-20 | 2013-06-20 | Sybase, Inc. | Dynamic Load Balancing for Complex Event Processing |
US8830834B2 (en) | 2011-12-21 | 2014-09-09 | Cisco Technology, Inc. | Overlay-based packet steering |
CN104247333B (zh) | 2011-12-27 | 2017-08-11 | 思科技术公司 | 用于基于网络的服务的管理的系统和方法 |
US9838308B2 (en) * | 2011-12-28 | 2017-12-05 | Futurewei Technologies, Inc. | Improving the architecture of middleboxes or service routers to better consolidate diverse functions |
US8914406B1 (en) | 2012-02-01 | 2014-12-16 | Vorstack, Inc. | Scalable network security with fast response protocol |
US8868711B2 (en) | 2012-02-03 | 2014-10-21 | Microsoft Corporation | Dynamic load balancing in a scalable environment |
US8553552B2 (en) | 2012-02-08 | 2013-10-08 | Radisys Corporation | Stateless load balancer in a multi-node system for transparent processing with packet preservation |
US8954964B2 (en) | 2012-02-27 | 2015-02-10 | Ca, Inc. | System and method for isolated virtual image and appliance communication within a cloud environment |
US8955093B2 (en) | 2012-04-11 | 2015-02-10 | Varmour Networks, Inc. | Cooperative network security inspection |
US9331938B2 (en) | 2012-04-13 | 2016-05-03 | Nicira, Inc. | Extension of logical networks across layer 3 virtual private networks |
US8825867B2 (en) | 2012-05-04 | 2014-09-02 | Telefonaktiebolaget L M Ericsson (Publ) | Two level packet distribution with stateless first level packet distribution to a group of servers and stateful second level packet distribution to a server within the group |
US8867367B2 (en) | 2012-05-10 | 2014-10-21 | Telefonaktiebolaget L M Ericsson (Publ) | 802.1aq support over IETF EVPN |
US9325562B2 (en) | 2012-05-15 | 2016-04-26 | International Business Machines Corporation | Overlay tunnel information exchange protocol |
US8862883B2 (en) | 2012-05-16 | 2014-10-14 | Cisco Technology, Inc. | System and method for secure cloud service delivery with prioritized services in a network environment |
WO2013177289A1 (en) | 2012-05-23 | 2013-11-28 | Brocade Communications Systems, Inc. | Layer-3 overlay gateways |
US8488577B1 (en) | 2012-06-06 | 2013-07-16 | Google Inc. | Apparatus for controlling the availability of internet access to applications |
US9898317B2 (en) * | 2012-06-06 | 2018-02-20 | Juniper Networks, Inc. | Physical path determination for virtual network packet flows |
US9304801B2 (en) | 2012-06-12 | 2016-04-05 | TELEFONAKTIEBOLAGET L M ERRICSSON (publ) | Elastic enforcement layer for cloud security using SDN |
EP2862301B1 (en) | 2012-06-14 | 2020-12-02 | Extreme Networks, Inc. | Multicast to unicast conversion technique |
US8913507B2 (en) | 2012-06-21 | 2014-12-16 | Breakingpoint Systems, Inc. | Virtual data loopback and/or data capture in a computing system |
US8948001B2 (en) | 2012-06-26 | 2015-02-03 | Juniper Networks, Inc. | Service plane triggered fast reroute protection |
US9143557B2 (en) | 2012-06-27 | 2015-09-22 | Juniper Networks, Inc. | Feedback loop for service engineered paths |
US9325569B2 (en) | 2012-06-29 | 2016-04-26 | Hewlett Packard Enterprise Development Lp | Implementing a software defined network using event records that are transmitted from a network switch |
EP2861038B1 (en) | 2012-06-29 | 2019-12-18 | Huawei Technologies Co., Ltd. | Information processing method, forwarding plane apparatus and control plane apparatus |
WO2014000304A1 (zh) | 2012-06-30 | 2014-01-03 | 华为技术有限公司 | 一种控制和转发解耦架构下的转发面隧道资源的管理方法 |
US9661522B2 (en) | 2012-07-09 | 2017-05-23 | Cisco Technology, Inc. | System and method associated with a service flow router |
US9608901B2 (en) | 2012-07-24 | 2017-03-28 | Telefonaktiebolaget Lm Ericsson (Publ) | System and method for enabling services chaining in a provider network |
US9065677B2 (en) | 2012-07-25 | 2015-06-23 | Qualcomm Incorporated | Forwarding tables for hybrid communication networks |
US9678801B2 (en) | 2012-08-09 | 2017-06-13 | International Business Machines Corporation | Service management modes of operation in distributed node service management |
US9071631B2 (en) | 2012-08-09 | 2015-06-30 | International Business Machines Corporation | Service management roles of processor nodes in distributed node service management |
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 |
US8825851B2 (en) | 2012-08-17 | 2014-09-02 | Vmware, Inc. | Management of a virtual machine in a storage area network environment |
US10397074B2 (en) | 2012-08-24 | 2019-08-27 | Red Hat, Inc. | Providing message flow analysis for an enterprise service bus |
US10203972B2 (en) | 2012-08-27 | 2019-02-12 | Vmware, Inc. | Framework for networking and security services in virtual networks |
US9104492B2 (en) | 2012-09-04 | 2015-08-11 | Wisconsin Alumni Research Foundation | Cloud-based middlebox management system |
EP2896010A4 (en) | 2012-09-12 | 2016-04-27 | Iex Group Inc | DEVICES, METHODS AND SYSTEMS FOR TRANSMISSION DATA LEVELING |
US9106561B2 (en) | 2012-12-06 | 2015-08-11 | A10 Networks, Inc. | Configuration of a virtual service network |
US9843484B2 (en) * | 2012-09-25 | 2017-12-12 | A10 Networks, Inc. | Graceful scaling in software driven networks |
US9036476B2 (en) | 2012-09-28 | 2015-05-19 | Juniper Networks, Inc. | Maintaining load balancing after service application with a network device |
US9178715B2 (en) | 2012-10-01 | 2015-11-03 | International Business Machines Corporation | Providing services to virtual overlay network traffic |
US8855127B2 (en) | 2012-10-02 | 2014-10-07 | Lsi Corporation | Method and system for intelligent deep packet buffering |
US9148367B2 (en) | 2012-10-02 | 2015-09-29 | Cisco Technology, Inc. | System and method for binding flows in a service cluster deployment in a network environment |
US10044596B2 (en) | 2012-10-05 | 2018-08-07 | Carl D. Ostrom | Devices, methods, and systems for packet reroute permission based on content parameters embedded in packet header or payload |
US9071609B2 (en) | 2012-10-08 | 2015-06-30 | Google Technology Holdings LLC | Methods and apparatus for performing dynamic load balancing of processing resources |
US20140101656A1 (en) | 2012-10-10 | 2014-04-10 | Zhongwen Zhu | Virtual firewall mobility |
US9917865B2 (en) | 2012-10-16 | 2018-03-13 | Citrix Systems, Inc. | Systems and methods for bridging between public and private clouds through multilevel API integration |
US9571507B2 (en) | 2012-10-21 | 2017-02-14 | Mcafee, Inc. | Providing a virtual security appliance architecture to a virtual cloud infrastructure |
EP2915310B1 (en) | 2012-11-02 | 2020-09-02 | Silverlake Mobility Ecosystem Sdn Bhd | Method of processing requests for digital services |
EP2822241B1 (en) | 2012-11-19 | 2016-02-10 | Huawei Technologies Co., Ltd. | Packet switching resource allocation method and device |
US10713183B2 (en) | 2012-11-28 | 2020-07-14 | Red Hat Israel, Ltd. | Virtual machine backup using snapshots and current configuration |
US20140164477A1 (en) | 2012-12-06 | 2014-06-12 | Gary M. Springer | System and method for providing horizontal scaling of stateful applications |
US9338225B2 (en) | 2012-12-06 | 2016-05-10 | A10 Networks, Inc. | Forwarding policies on a virtual service network |
US9203748B2 (en) | 2012-12-24 | 2015-12-01 | Huawei Technologies Co., Ltd. | Software defined network-based data processing method, node, and system |
US9197549B2 (en) | 2013-01-23 | 2015-11-24 | Cisco Technology, Inc. | Server load balancer traffic steering |
WO2014118938A1 (ja) | 2013-01-31 | 2014-08-07 | 株式会社日立製作所 | 通信経路の管理方法 |
US10375155B1 (en) | 2013-02-19 | 2019-08-06 | F5 Networks, Inc. | System and method for achieving hardware acceleration for asymmetric flow connections |
US10484334B1 (en) | 2013-02-26 | 2019-11-19 | Zentera Systems, Inc. | Distributed firewall security system that extends across different cloud computing networks |
US20140269724A1 (en) | 2013-03-04 | 2014-09-18 | Telefonaktiebolaget L M Ericsson (Publ) | Method and devices for forwarding ip data packets in an access network |
US9210072B2 (en) | 2013-03-08 | 2015-12-08 | Dell Products L.P. | Processing of multicast traffic in computer networks |
US9049127B2 (en) | 2013-03-11 | 2015-06-02 | Cisco Technology, Inc. | Methods and devices for providing service clustering in a trill network |
US9300627B2 (en) | 2013-03-14 | 2016-03-29 | Time Warner Cable Enterprises Llc | System and method for automatic routing of dynamic host configuration protocol (DHCP) traffic |
US10356579B2 (en) | 2013-03-15 | 2019-07-16 | The Nielsen Company (Us), Llc | Methods and apparatus to credit usage of mobile devices |
US9477500B2 (en) | 2013-03-15 | 2016-10-25 | Avi Networks | Managing and controlling a distributed network service platform |
US9509636B2 (en) | 2013-03-15 | 2016-11-29 | Vivint, Inc. | Multicast traffic management within a wireless mesh network |
US9621581B2 (en) | 2013-03-15 | 2017-04-11 | Cisco Technology, Inc. | IPV6/IPV4 resolution-less forwarding up to a destination |
US9619542B2 (en) | 2013-04-06 | 2017-04-11 | Citrix Systems, Inc. | Systems and methods for application-state distributed replication table hunting |
US9497281B2 (en) | 2013-04-06 | 2016-11-15 | Citrix Systems, Inc. | Systems and methods to cache packet steering decisions for a cluster of load balancers |
US9660905B2 (en) | 2013-04-12 | 2017-05-23 | Futurewei Technologies, Inc. | Service chain policy for distributed gateways in virtual overlay networks |
US10038626B2 (en) | 2013-04-16 | 2018-07-31 | Amazon Technologies, Inc. | Multipath routing in a distributed load balancer |
US10069903B2 (en) | 2013-04-16 | 2018-09-04 | Amazon Technologies, Inc. | Distributed load balancer |
US10075470B2 (en) | 2013-04-19 | 2018-09-11 | Nicira, Inc. | Framework for coordination between endpoint security and network security services |
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 |
US9178828B2 (en) | 2013-04-26 | 2015-11-03 | Cisco Technology, Inc. | Architecture for agentless service insertion |
US9225638B2 (en) | 2013-05-09 | 2015-12-29 | Vmware, Inc. | Method and system for service switching using service tags |
US9246799B2 (en) | 2013-05-10 | 2016-01-26 | Cisco Technology, Inc. | Data plane learning of bi-directional service chains |
US9160666B2 (en) | 2013-05-20 | 2015-10-13 | Telefonaktiebolaget L M Ericsson (Publ) | Encoding a payload hash in the DA-MAC to facilitate elastic chaining of packet processing elements |
US9826025B2 (en) | 2013-05-21 | 2017-11-21 | Cisco Technology, Inc. | Chaining service zones by way of route re-origination |
CN104322019B (zh) | 2013-05-23 | 2017-11-07 | 华为技术有限公司 | 业务路由系统、设备和方法 |
US9503378B2 (en) | 2013-06-07 | 2016-11-22 | The Florida International University Board Of Trustees | Load-balancing algorithms for data center networks |
US9444675B2 (en) | 2013-06-07 | 2016-09-13 | Cisco Technology, Inc. | Determining the operations performed along a service path/service chain |
US9495296B2 (en) | 2013-06-12 | 2016-11-15 | Oracle International Corporation | Handling memory pressure in an in-database sharded queue |
EP2813945A1 (en) | 2013-06-14 | 2014-12-17 | Tocario GmbH | Method and system for enabling access of a client device to a remote desktop |
WO2014198053A1 (en) | 2013-06-14 | 2014-12-18 | Microsoft Corporation | Fault tolerant and load balanced routing |
US9621642B2 (en) | 2013-06-17 | 2017-04-11 | Telefonaktiebolaget Lm Ericsson (Publ) | Methods of forwarding data packets using transient tables and related load balancers |
US9137165B2 (en) | 2013-06-17 | 2015-09-15 | Telefonaktiebolaget L M Ericsson (Publ) | Methods of load balancing using primary and stand-by addresses and related load balancers and servers |
US20140372616A1 (en) | 2013-06-17 | 2014-12-18 | Telefonaktiebolaget L M Ericsson (Publ) | Methods of forwarding/receiving data packets using unicast and/or multicast communications and related load balancers and servers |
US9686192B2 (en) | 2013-06-28 | 2017-06-20 | Niciria, Inc. | Network service slotting |
US9350657B2 (en) | 2013-07-08 | 2016-05-24 | Nicira, Inc. | Encapsulating data packets using an adaptive tunnelling protocol |
US9755963B2 (en) | 2013-07-09 | 2017-09-05 | Nicira, Inc. | Using headerspace analysis to identify flow entry reachability |
CN104283979B (zh) | 2013-07-11 | 2017-11-17 | 华为技术有限公司 | 组播域名系统中报文传输的方法、装置及系统 |
US9755959B2 (en) | 2013-07-17 | 2017-09-05 | Cisco Technology, Inc. | Dynamic service path creation |
US9509615B2 (en) | 2013-07-22 | 2016-11-29 | Vmware, Inc. | Managing link aggregation traffic in a virtual environment |
US9231863B2 (en) | 2013-07-23 | 2016-01-05 | Dell Products L.P. | Systems and methods for a data center architecture facilitating layer 2 over layer 3 communication |
US9331941B2 (en) | 2013-08-12 | 2016-05-03 | Cisco Technology, Inc. | Traffic flow redirection between border routers using routing encapsulation |
US9887960B2 (en) | 2013-08-14 | 2018-02-06 | Nicira, Inc. | Providing services for logical networks |
US9952885B2 (en) | 2013-08-14 | 2018-04-24 | Nicira, Inc. | Generation of configuration files for a DHCP module executing within a virtualized container |
WO2015023537A2 (en) | 2013-08-16 | 2015-02-19 | Interdigital Patent Holdings, Inc. | Methods and apparatus for hash routing in software defined networking |
JPWO2015029420A1 (ja) | 2013-08-26 | 2017-03-02 | 日本電気株式会社 | 通信システムにおける通信装置、通信方法、制御装置および管理装置 |
US9203765B2 (en) | 2013-08-30 | 2015-12-01 | Cisco Technology, Inc. | Flow based network service insertion using a service chain identifier |
US9577845B2 (en) | 2013-09-04 | 2017-02-21 | Nicira, Inc. | Multiple active L3 gateways for logical networks |
US9680748B2 (en) | 2013-09-15 | 2017-06-13 | Nicira, Inc. | Tracking prefixes of values associated with different rules to generate flows |
US10091276B2 (en) | 2013-09-27 | 2018-10-02 | Transvoyant, Inc. | Computer-implemented systems and methods of analyzing data in an ad-hoc network for predictive decision-making |
US9917745B2 (en) | 2013-09-27 | 2018-03-13 | Futurewei Technologies, Inc. | Validation of chained network services |
US9258742B1 (en) | 2013-09-30 | 2016-02-09 | Juniper Networks, Inc. | Policy-directed value-added services chaining |
US9755960B2 (en) | 2013-09-30 | 2017-09-05 | Juniper Networks, Inc. | Session-aware service chaining within computer networks |
US9596126B2 (en) | 2013-10-10 | 2017-03-14 | Nicira, Inc. | Controller side method of generating and updating a controller assignment list |
US9264330B2 (en) | 2013-10-13 | 2016-02-16 | Nicira, Inc. | Tracing host-originated logical network packets |
US9385950B2 (en) | 2013-10-14 | 2016-07-05 | Cisco Technology, Inc. | Configurable service proxy local identifier mapping |
CN103516807B (zh) | 2013-10-14 | 2016-09-21 | 中国联合网络通信集团有限公司 | 一种云计算平台服务器负载均衡系统及方法 |
US9264313B1 (en) | 2013-10-31 | 2016-02-16 | Vmware, Inc. | System and method for performing a service discovery for virtual networks |
US20150124622A1 (en) | 2013-11-01 | 2015-05-07 | Movik Networks, Inc. | Multi-Interface, Multi-Layer State-full Load Balancer For RAN-Analytics Deployments In Multi-Chassis, Cloud And Virtual Server Environments |
US9578141B2 (en) * | 2013-11-03 | 2017-02-21 | Ixia | Packet flow modification |
US9634938B2 (en) | 2013-11-05 | 2017-04-25 | International Business Machines Corporation | Adaptive scheduling of data flows in data center networks for efficient resource utilization |
US9397946B1 (en) | 2013-11-05 | 2016-07-19 | Cisco Technology, Inc. | Forwarding to clusters of service nodes |
US9300585B2 (en) | 2013-11-15 | 2016-03-29 | Cisco Technology, Inc. | Shortening of service paths in service chains in a communications network |
US9392025B2 (en) | 2013-11-21 | 2016-07-12 | Cisco Technology, Inc. | Subscriber dependent redirection between a mobile packet core proxy and a cell site proxy in a network environment |
US9231871B2 (en) | 2013-11-25 | 2016-01-05 | Versa Networks, Inc. | Flow distribution table for packet flow load balancing |
US10104169B1 (en) | 2013-12-18 | 2018-10-16 | Amazon Technologies, Inc. | Optimizing a load balancer configuration |
EP3085148B1 (en) | 2013-12-19 | 2020-11-04 | Nokia Solutions and Networks Oy | A method and apparatus for performing flexible service chaining |
US9548896B2 (en) | 2013-12-27 | 2017-01-17 | Big Switch Networks, Inc. | Systems and methods for performing network service insertion |
CN104767629B (zh) | 2014-01-06 | 2017-12-12 | 腾讯科技(深圳)有限公司 | 分配服务节点的方法、装置及系统 |
US9825856B2 (en) | 2014-01-06 | 2017-11-21 | Futurewei Technologies, Inc. | Service function chaining in a packet network |
US9992103B2 (en) | 2014-01-24 | 2018-06-05 | Cisco Technology, Inc. | Method for providing sticky load balancing |
US9514018B2 (en) | 2014-01-28 | 2016-12-06 | Software Ag | Scaling framework for querying |
CN105684505B (zh) | 2014-01-29 | 2019-08-23 | 华为技术有限公司 | 通信网络、设备和控制方法 |
US9467382B2 (en) | 2014-02-03 | 2016-10-11 | Cisco Technology, Inc. | Elastic service chains |
US9967175B2 (en) | 2014-02-14 | 2018-05-08 | Futurewei Technologies, Inc. | Restoring service functions after changing a service chain instance path |
US9215214B2 (en) | 2014-02-20 | 2015-12-15 | Nicira, Inc. | Provisioning firewall rules on a firewall enforcing device |
US9880826B2 (en) | 2014-02-25 | 2018-01-30 | Red Hat, Inc. | Installing of application resources in a multi-tenant platform-as-a-service (PaS) system |
EP3116178B1 (en) | 2014-03-04 | 2019-02-06 | Nec Corporation | Packet processing device, packet processing method, and program |
CN109101318B (zh) | 2014-03-12 | 2022-04-05 | 华为技术有限公司 | 一种虚拟机迁移控制方法及装置 |
US9344337B2 (en) | 2014-03-13 | 2016-05-17 | Cisco Technology, Inc. | Service node originated service chains in a network environment |
US9590901B2 (en) | 2014-03-14 | 2017-03-07 | Nicira, Inc. | Route advertisement by managed gateways |
EP2922252B1 (en) | 2014-03-21 | 2017-09-13 | Juniper Networks, Inc. | Selectable service node resources |
CN104954274B (zh) | 2014-03-25 | 2018-03-16 | 华为技术有限公司 | 生成转发信息的方法、控制器和业务转发实体 |
US9602380B2 (en) | 2014-03-28 | 2017-03-21 | Futurewei Technologies, Inc. | Context-aware dynamic policy selection for load balancing behavior |
US9787559B1 (en) | 2014-03-28 | 2017-10-10 | Juniper Networks, Inc. | End-to-end monitoring of overlay networks providing virtualized network services |
US9473410B2 (en) | 2014-03-31 | 2016-10-18 | Sandvine Incorporated Ulc | System and method for load balancing in computer networks |
US9215210B2 (en) | 2014-03-31 | 2015-12-15 | Nicira, Inc. | Migrating firewall connection state for a firewall service virtual machine |
US9503427B2 (en) | 2014-03-31 | 2016-11-22 | Nicira, Inc. | Method and apparatus for integrating a service virtual machine |
US10264071B2 (en) | 2014-03-31 | 2019-04-16 | Amazon Technologies, Inc. | Session management in distributed storage systems |
US9009289B1 (en) | 2014-03-31 | 2015-04-14 | Flexera Software Llc | Systems and methods for assessing application usage |
US9985896B2 (en) | 2014-03-31 | 2018-05-29 | Nicira, Inc. | Caching of service decisions |
CN107342952B (zh) | 2014-04-01 | 2022-03-01 | 华为技术有限公司 | 业务链路选择控制方法以及设备 |
US10178181B2 (en) | 2014-04-02 | 2019-01-08 | Cisco Technology, Inc. | Interposer with security assistant key escrow |
US9363183B2 (en) | 2014-04-10 | 2016-06-07 | Cisco Technology, Inc. | Network address translation offload to network infrastructure for service chains in a network environment |
US9634867B2 (en) | 2014-05-02 | 2017-04-25 | Futurewei Technologies, Inc. | Computing service chain-aware paths |
US9602422B2 (en) | 2014-05-05 | 2017-03-21 | Nicira, Inc. | Implementing fixed points in network state updates using generation numbers |
TW201546649A (zh) | 2014-06-05 | 2015-12-16 | Cavium Inc | 用於基於硬體安全模組的基於雲端的web服務安全管理的系統和方法 |
US9722927B2 (en) | 2014-06-05 | 2017-08-01 | Futurewei Technologies, Inc. | Service chain topology map construction |
US9917781B2 (en) | 2014-06-05 | 2018-03-13 | KEMP Technologies Inc. | Methods for intelligent data traffic steering |
US9413655B2 (en) | 2014-06-13 | 2016-08-09 | Cisco Technology, Inc. | Providing virtual private service chains in a network environment |
JP2017518710A (ja) | 2014-06-17 | 2017-07-06 | 華為技術有限公司Huawei Technologies Co.,Ltd. | サービスフロー処理方法、装置、およびデバイス |
US10013276B2 (en) | 2014-06-20 | 2018-07-03 | Google Llc | System and method for live migration of a virtualized networking stack |
US9602308B2 (en) | 2014-06-23 | 2017-03-21 | International Business Machines Corporation | Servicing packets in a virtual network and a software-defined network (SDN) |
US10261814B2 (en) | 2014-06-23 | 2019-04-16 | Intel Corporation | Local service chaining with virtual machines and virtualized containers in software defined networking |
US20150379280A1 (en) | 2014-06-30 | 2015-12-31 | Nicira, Inc. | Method and Apparatus for Dynamically Creating Encryption Rules |
US9634936B2 (en) | 2014-06-30 | 2017-04-25 | Juniper Networks, Inc. | Service chaining across multiple networks |
US9419897B2 (en) | 2014-06-30 | 2016-08-16 | Nicira, Inc. | Methods and systems for providing multi-tenancy support for Single Root I/O Virtualization |
US9692698B2 (en) | 2014-06-30 | 2017-06-27 | Nicira, Inc. | Methods and systems to offload overlay network packet encapsulation to hardware |
US9455908B2 (en) | 2014-07-07 | 2016-09-27 | Cisco Technology, Inc. | Bi-directional flow stickiness in a network environment |
US10003530B2 (en) | 2014-07-22 | 2018-06-19 | Futurewei Technologies, Inc. | Service chain header and metadata transport |
CN105453493B (zh) | 2014-07-23 | 2019-02-05 | 华为技术有限公司 | 业务报文转发方法及装置 |
US9774533B2 (en) | 2014-08-06 | 2017-09-26 | Futurewei Technologies, Inc. | Mechanisms to support service chain graphs in a communication network |
US20160057687A1 (en) | 2014-08-19 | 2016-02-25 | Qualcomm Incorporated | Inter/intra radio access technology mobility and user-plane split measurement configuration |
US20160065503A1 (en) | 2014-08-29 | 2016-03-03 | Extreme Networks, Inc. | Methods, systems, and computer readable media for virtual fabric routing |
US9442752B1 (en) | 2014-09-03 | 2016-09-13 | Amazon Technologies, Inc. | Virtual secure execution environments |
EP3192213A1 (en) | 2014-09-12 | 2017-07-19 | Voellmy, Andreas R. | Managing network forwarding configurations using algorithmic policies |
KR20170060066A (ko) | 2014-09-19 | 2017-05-31 | 노키아 솔루션스 앤드 네트웍스 오와이 | 통신 네트워크에서의 네트워크 서비스 기능들의 체이닝 |
US20170250902A1 (en) | 2014-09-23 | 2017-08-31 | Nokia Solutions And Networks Oy | Control of communication using service function chaining |
US9804797B1 (en) | 2014-09-29 | 2017-10-31 | EMC IP Holding Company LLC | Using dynamic I/O load differential for load balancing |
US11496606B2 (en) | 2014-09-30 | 2022-11-08 | Nicira, Inc. | Sticky service sessions in a datacenter |
CN107078948B (zh) | 2014-09-30 | 2019-11-29 | 华为技术有限公司 | 一种生成业务路径的方法和装置 |
US10257095B2 (en) | 2014-09-30 | 2019-04-09 | Nicira, Inc. | Dynamically adjusting load balancing |
US9935827B2 (en) * | 2014-09-30 | 2018-04-03 | Nicira, Inc. | Method and apparatus for distributing load among a plurality of service nodes |
US10469342B2 (en) | 2014-10-10 | 2019-11-05 | Nicira, Inc. | Logical network traffic analysis |
US9548919B2 (en) | 2014-10-24 | 2017-01-17 | Cisco Technology, Inc. | Transparent network service header path proxies |
US10602000B2 (en) | 2014-10-29 | 2020-03-24 | Nokia Of America Corporation | Policy decisions based on offline charging rules when service chaining is implemented |
US9590902B2 (en) | 2014-11-10 | 2017-03-07 | Juniper Networks, Inc. | Signaling aliasing capability in data centers |
US9256467B1 (en) | 2014-11-11 | 2016-02-09 | Amazon Technologies, Inc. | System for managing and scheduling containers |
US9838286B2 (en) | 2014-11-20 | 2017-12-05 | Telefonaktiebolaget L M Ericsson (Publ) | Passive performance measurement for inline service chaining |
US9705775B2 (en) | 2014-11-20 | 2017-07-11 | Telefonaktiebolaget Lm Ericsson (Publ) | Passive performance measurement for inline service chaining |
US10855791B2 (en) | 2014-11-25 | 2020-12-01 | Netapp, Inc. | Clustered storage system path quiescence analysis |
WO2016082167A1 (zh) | 2014-11-28 | 2016-06-02 | 华为技术有限公司 | 业务处理装置及方法 |
US20160164825A1 (en) | 2014-12-04 | 2016-06-09 | Cisco Technology, Inc. | Policy Implementation Based on Data from a Domain Name System Authoritative Source |
CN107005478B (zh) | 2014-12-09 | 2020-05-08 | 华为技术有限公司 | 一种自适应流表的处理方法及装置 |
US9866472B2 (en) | 2014-12-09 | 2018-01-09 | Oath Inc. | Systems and methods for software defined networking service function chaining |
US9660909B2 (en) | 2014-12-11 | 2017-05-23 | Cisco Technology, Inc. | Network service header metadata for load balancing |
CN105743822B (zh) | 2014-12-11 | 2019-04-19 | 华为技术有限公司 | 一种处理报文的方法及装置 |
US9571405B2 (en) | 2015-02-25 | 2017-02-14 | Cisco Technology, Inc. | Metadata augmentation in a service function chain |
US9614757B2 (en) | 2014-12-17 | 2017-04-04 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and arrangement for relocating packet processing functions |
AU2014414703B2 (en) | 2014-12-17 | 2018-11-08 | Huawei Cloud Computing Technologies Co., Ltd. | Data forwarding method, device and system in software-defined networking |
US20160182668A1 (en) | 2014-12-18 | 2016-06-23 | Limelight Networks, Inc. | Acceleration nodes for improving web traffic quality of service |
WO2016096052A1 (en) | 2014-12-19 | 2016-06-23 | Telefonaktiebolaget Lm Ericsson (Publ) | Methods and apparatus for relocating packet processing functions |
US9462084B2 (en) | 2014-12-23 | 2016-10-04 | Intel Corporation | Parallel processing of service functions in service function chains |
US9680762B2 (en) | 2015-01-05 | 2017-06-13 | Futurewei Technologies, Inc. | Method and system for providing QoS for in-band control traffic in an openflow network |
GB2525701B (en) | 2015-01-08 | 2016-11-30 | Openwave Mobility Inc | A software defined network and a communication network comprising the same |
US20160212048A1 (en) | 2015-01-15 | 2016-07-21 | Hewlett Packard Enterprise Development Lp | Openflow service chain data packet routing using tables |
JP2016134700A (ja) | 2015-01-16 | 2016-07-25 | 富士通株式会社 | 管理サーバ、通信システム、および、経路管理方法 |
US10341188B2 (en) | 2015-01-27 | 2019-07-02 | Huawei Technologies Co., Ltd. | Network virtualization for network infrastructure |
US10129180B2 (en) | 2015-01-30 | 2018-11-13 | Nicira, Inc. | Transit logical switch within logical router |
EP3249863B1 (en) | 2015-02-13 | 2019-06-19 | Huawei Technologies Co., Ltd. | Access control apparatus, system and method |
WO2016134752A1 (en) | 2015-02-24 | 2016-09-01 | Nokia Solutions And Networks Oy | Integrated services processing for mobile networks |
US9749225B2 (en) | 2015-04-17 | 2017-08-29 | Huawei Technologies Co., Ltd. | Software defined network (SDN) control signaling for traffic engineering to enable multi-type transport in a data plane |
US10116464B2 (en) | 2015-03-18 | 2018-10-30 | Juniper Networks, Inc. | EVPN inter-subnet multicast forwarding |
US10594743B2 (en) | 2015-04-03 | 2020-03-17 | Nicira, Inc. | Method, apparatus, and system for implementing a content switch |
US10038628B2 (en) | 2015-04-04 | 2018-07-31 | Nicira, Inc. | Route server mode for dynamic routing between logical and physical networks |
US10135789B2 (en) | 2015-04-13 | 2018-11-20 | Nicira, Inc. | Method and system of establishing a virtual private network in a cloud service for branch networking |
EP3266156B1 (en) | 2015-04-23 | 2022-11-23 | Hewlett Packard Enterprise Development LP | Network infrastructure device to implement pre-filter rules |
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 |
US9998565B2 (en) | 2015-05-25 | 2018-06-12 | Juniper Networks, Inc. | Selecting and monitoring a plurality of services key performance indicators using TWAMP |
CN106302206B (zh) | 2015-05-28 | 2020-04-24 | 中兴通讯股份有限公司 | 报文的转发处理方法、装置及系统 |
US9985869B2 (en) | 2015-06-09 | 2018-05-29 | International Business Machines Corporation | Support for high availability of service appliances in a software-defined network (SDN) service chaining infrastructure |
CN106664252B (zh) | 2015-06-10 | 2019-11-29 | 华为技术有限公司 | 实现业务链接的方法、设备及系统 |
JP6097467B1 (ja) | 2015-06-10 | 2017-03-15 | 株式会社ソラコム | 無線端末にipネットワークへのアクセスを提供するための通信システム及び通信方法 |
US10742544B2 (en) | 2015-06-15 | 2020-08-11 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and network nodes for scalable mapping of tags to service function chain encapsulation headers |
US10042722B1 (en) | 2015-06-23 | 2018-08-07 | Juniper Networks, Inc. | Service-chain fault tolerance in service virtualized environments |
US10554484B2 (en) | 2015-06-26 | 2020-02-04 | Nicira, Inc. | Control plane integration with hardware switches |
US10742722B2 (en) | 2015-06-26 | 2020-08-11 | Hewlett Packard Enterprise Development Lp | Server load balancing |
US10609122B1 (en) | 2015-06-29 | 2020-03-31 | Amazon Technologies, Inc. | Instance backed building or place |
US9806948B2 (en) | 2015-06-30 | 2017-10-31 | Nicira, Inc. | Providing firewall rules for workload spread across multiple data centers |
US11204791B2 (en) | 2015-06-30 | 2021-12-21 | Nicira, Inc. | Dynamic virtual machine network policy for ingress optimization |
US9749229B2 (en) | 2015-07-01 | 2017-08-29 | Cisco Technology, Inc. | Forwarding packets with encapsulated service chain headers |
CN106330714B (zh) | 2015-07-02 | 2020-05-29 | 中兴通讯股份有限公司 | 一种实现业务功能链的方法和装置 |
US10313235B2 (en) | 2015-07-13 | 2019-06-04 | Futurewei Technologies, Inc. | Internet control message protocol enhancement for traffic carried by a tunnel over internet protocol networks |
US10367728B2 (en) | 2015-07-15 | 2019-07-30 | Netsia, Inc. | Methods for forwarding rule hopping based secure communications |
US10637889B2 (en) | 2015-07-23 | 2020-04-28 | Cisco Technology, Inc. | Systems, methods, and devices for smart mapping and VPN policy enforcement |
US10069639B2 (en) | 2015-07-28 | 2018-09-04 | Ciena Corporation | Multicast systems and methods for segment routing |
US9923984B2 (en) | 2015-10-30 | 2018-03-20 | Oracle International Corporation | Methods, systems, and computer readable media for remote authentication dial in user service (RADIUS) message loop detection and mitigation |
US9894188B2 (en) | 2015-08-28 | 2018-02-13 | Nicira, Inc. | Packet data restoration for flow-based forwarding element |
US10432520B2 (en) | 2015-08-28 | 2019-10-01 | Nicira, Inc. | Traffic forwarding between geographically dispersed sites |
US9894103B2 (en) | 2015-08-28 | 2018-02-13 | Nicira, Inc. | Performing source network address translation based on remote device management attributes |
EP3311528A1 (en) | 2015-08-31 | 2018-04-25 | Huawei Technologies Co., Ltd. | Redirection of service or device discovery messages in software-defined networks |
US9591582B1 (en) | 2015-09-10 | 2017-03-07 | Qualcomm Incorporated | Smart co-processor for optimizing service discovery power consumption in wireless service platforms |
US9667518B2 (en) | 2015-09-11 | 2017-05-30 | Telefonaktiebolaget L M Ericsson (Publ) | Method and system for delay measurement of a traffic flow in a software-defined networking (SDN) system |
CN106533935B (zh) | 2015-09-14 | 2019-07-12 | 华为技术有限公司 | 一种在云计算系统中获取业务链信息的方法和装置 |
US9948577B2 (en) | 2015-09-30 | 2018-04-17 | Nicira, Inc. | IP aliases in logical networks with hardware switches |
US10853111B1 (en) | 2015-09-30 | 2020-12-01 | Amazon Technologies, Inc. | Virtual machine instance migration feedback |
US20170093698A1 (en) | 2015-09-30 | 2017-03-30 | Huawei Technologies Co., Ltd. | Method and apparatus for supporting service function chaining in a communication network |
US10116553B1 (en) | 2015-10-15 | 2018-10-30 | Cisco Technology, Inc. | Application identifier in service function chain metadata |
EP3350963B1 (en) | 2015-10-28 | 2021-08-04 | Huawei Technologies Co., Ltd. | Control traffic in software defined networks |
US10095535B2 (en) | 2015-10-31 | 2018-10-09 | Nicira, Inc. | Static route types for logical routers |
US10078526B2 (en) | 2015-11-01 | 2018-09-18 | Nicira, Inc. | Securing a managed forwarding element that operates within a data compute node |
US9912788B2 (en) | 2015-11-10 | 2018-03-06 | Telefonaktiebolaget L M Ericsson (Publ) | Systems and methods of an enhanced state-aware proxy device |
US9860079B2 (en) | 2015-11-20 | 2018-01-02 | Oracle International Corporation | Redirecting packets for egress from an autonomous system using tenant specific routing and forwarding tables |
CN106788911A (zh) | 2015-11-25 | 2017-05-31 | 华为技术有限公司 | 一种报文重传的方法和装置 |
US10067803B2 (en) | 2015-11-25 | 2018-09-04 | International Business Machines Corporation | Policy based virtual machine selection during an optimization cycle |
US10084703B2 (en) | 2015-12-04 | 2018-09-25 | Cisco Technology, Inc. | Infrastructure-exclusive service forwarding |
US10404791B2 (en) | 2015-12-04 | 2019-09-03 | Microsoft Technology Licensing, Llc | State-aware load balancing of application servers |
US9948611B2 (en) | 2015-12-14 | 2018-04-17 | Nicira, Inc. | Packet tagging for improved guest system security |
US10171336B2 (en) | 2015-12-16 | 2019-01-01 | Telefonaktiebolaget Lm Ericsson (Publ) | Openflow configured horizontally split hybrid SDN nodes |
CN106936939B (zh) | 2015-12-31 | 2020-06-02 | 华为技术有限公司 | 一种报文处理方法、相关装置及nvo3网络系统 |
US10075393B2 (en) | 2015-12-31 | 2018-09-11 | Fortinet, Inc. | Packet routing using a software-defined networking (SDN) switch |
US10063468B2 (en) | 2016-01-15 | 2018-08-28 | Cisco Technology, Inc. | Leaking routes in a service chain |
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 |
US20170214627A1 (en) | 2016-01-21 | 2017-07-27 | Futurewei Technologies, Inc. | Distributed Load Balancing for Network Service Function Chaining |
US10216467B2 (en) | 2016-02-03 | 2019-02-26 | Google Llc | Systems and methods for automatic content verification |
US10412048B2 (en) | 2016-02-08 | 2019-09-10 | Cryptzone North America, Inc. | Protecting network devices by a firewall |
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 |
US10158568B2 (en) | 2016-02-12 | 2018-12-18 | Huawei Technologies Co., Ltd. | Method and apparatus for service function forwarding in a service domain |
EP3420708B1 (en) | 2016-02-26 | 2020-01-01 | Telefonaktiebolaget LM Ericsson (PUBL) | Dynamic re-route in a redundant system of a packet network |
US10003660B2 (en) | 2016-02-29 | 2018-06-19 | Cisco Technology, Inc. | System and method for data plane signaled packet capture in a service function chaining network |
CN107204941A (zh) | 2016-03-18 | 2017-09-26 | 中兴通讯股份有限公司 | 一种灵活以太网路径建立的方法和装置 |
US10187306B2 (en) | 2016-03-24 | 2019-01-22 | Cisco Technology, Inc. | System and method for improved service chaining |
ES2716657T3 (es) | 2016-04-07 | 2019-06-13 | Telefonica Sa | Un método para asegurar el recorrido de paquetes de datos correcto a través de una trayectoria particular de una red |
US10320681B2 (en) | 2016-04-12 | 2019-06-11 | Nicira, Inc. | Virtual tunnel endpoints for congestion-aware load balancing |
US10931793B2 (en) | 2016-04-26 | 2021-02-23 | Cisco Technology, Inc. | System and method for automated rendering of service chaining |
US10171350B2 (en) | 2016-04-27 | 2019-01-01 | Cisco Technology, Inc. | Generating packets in a reverse direction of a service function chain |
US10333849B2 (en) | 2016-04-28 | 2019-06-25 | Nicira, Inc. | Automatic configuration of logical routers on edge nodes |
US20170317936A1 (en) | 2016-04-28 | 2017-11-02 | Cisco Technology, Inc. | Selective steering network traffic to virtual service(s) using policy |
US10469320B2 (en) | 2016-04-29 | 2019-11-05 | Deutsche Telekom Ag | Versioning system for network states in a software-defined network |
US10491688B2 (en) | 2016-04-29 | 2019-11-26 | Hewlett Packard Enterprise Development Lp | Virtualized network function placements |
US10355983B2 (en) | 2016-05-09 | 2019-07-16 | Cisco Technology, Inc. | Traceroute to return aggregated statistics in service chains |
US10097402B2 (en) | 2016-05-11 | 2018-10-09 | Hewlett Packard Enterprise Development Lp | Filter tables for management functions |
KR102541641B1 (ko) | 2016-06-07 | 2023-06-08 | 한국전자통신연구원 | 분산 서비스 기능 포워딩 시스템 및 방법 |
US10284390B2 (en) | 2016-06-08 | 2019-05-07 | Cisco Technology, Inc. | Techniques for efficient service chain analytics |
US20170366605A1 (en) | 2016-06-16 | 2017-12-21 | Alcatel-Lucent Usa Inc. | Providing data plane services for applications |
US20170364794A1 (en) | 2016-06-20 | 2017-12-21 | Telefonaktiebolaget Lm Ericsson (Publ) | Method for classifying the payload of encrypted traffic flows |
US10382596B2 (en) | 2016-06-23 | 2019-08-13 | Cisco Technology, Inc. | Transmitting network overlay information in a service function chain |
US10063415B1 (en) | 2016-06-29 | 2018-08-28 | Juniper Networks, Inc. | Network services using pools of pre-configured virtualized network functions and service chains |
US10318737B2 (en) | 2016-06-30 | 2019-06-11 | Amazon Technologies, Inc. | Secure booting of virtualization managers |
US10237176B2 (en) | 2016-06-30 | 2019-03-19 | Juniper Networks, Inc. | Auto discovery and auto scaling of services in software-defined network environment |
WO2018000442A1 (zh) | 2016-07-01 | 2018-01-04 | 华为技术有限公司 | 业务功能链sfc中用于转发报文的方法、装置和系统 |
EP3468117B1 (en) | 2016-07-01 | 2023-05-24 | Huawei Technologies Co., Ltd. | Service function chaining (sfc)-based packet forwarding method, device and system |
US20180026911A1 (en) | 2016-07-25 | 2018-01-25 | Cisco Technology, Inc. | System and method for providing a resource usage advertising framework for sfc-based workloads |
CN107666438B (zh) | 2016-07-27 | 2021-10-22 | 中兴通讯股份有限公司 | 报文转发方法及装置 |
US10142356B2 (en) | 2016-07-29 | 2018-11-27 | ShieldX Networks, Inc. | Channel data encapsulation system and method for use with client-server data channels |
US10225270B2 (en) | 2016-08-02 | 2019-03-05 | Cisco Technology, Inc. | Steering of cloned traffic in a service function chain |
WO2018023692A1 (en) | 2016-08-05 | 2018-02-08 | Nokia Shanghai Bell Co., Ltd. | Security-on-demand architecture |
US10630576B2 (en) | 2016-08-05 | 2020-04-21 | Huawei Technologies Co., Ltd. | Virtual network routing to dynamic end point locations in support of service-based traffic forwarding |
US10972437B2 (en) | 2016-08-08 | 2021-04-06 | Talari Networks Incorporated | Applications and integrated firewall design in an adaptive private network (APN) |
US20220019698A1 (en) | 2016-08-11 | 2022-01-20 | Intel Corporation | Secure Public Cloud with Protected Guest-Verified Host Control |
US10303899B2 (en) | 2016-08-11 | 2019-05-28 | Intel Corporation | Secure public cloud with protected guest-verified host control |
US10382325B2 (en) | 2016-08-26 | 2019-08-13 | Telefonaktiebolaget Lm Ericsson (Publ) | Improving service function proxy performance in software defined networking networks |
CA3034809C (en) | 2016-08-27 | 2021-07-06 | Nicira, Inc. | Extension of network control system into public cloud |
US10193749B2 (en) | 2016-08-27 | 2019-01-29 | Nicira, Inc. | Managed forwarding element executing in public cloud data compute node without overlay network |
US10361969B2 (en) | 2016-08-30 | 2019-07-23 | Cisco Technology, Inc. | System and method for managing chained services in a network environment |
US11277338B2 (en) | 2016-09-26 | 2022-03-15 | Juniper Networks, Inc. | Distributing service function chain data and service function instance data in a network |
US10938668B1 (en) | 2016-09-30 | 2021-03-02 | Amazon Technologies, Inc. | Safe deployment using versioned hash rings |
US20180102965A1 (en) | 2016-10-07 | 2018-04-12 | Alcatel-Lucent Usa Inc. | Unicast branching based multicast |
US10616100B2 (en) | 2016-11-03 | 2020-04-07 | Parallel Wireless, Inc. | Traffic shaping and end-to-end prioritization |
US11824863B2 (en) | 2016-11-03 | 2023-11-21 | Nicira, Inc. | Performing services on a host |
US11055273B1 (en) | 2016-11-04 | 2021-07-06 | Amazon Technologies, Inc. | Software container event monitoring systems |
US10187263B2 (en) | 2016-11-14 | 2019-01-22 | Futurewei Technologies, Inc. | Integrating physical and virtual network functions in a service-chained network environment |
US9906401B1 (en) | 2016-11-22 | 2018-02-27 | Gigamon Inc. | Network visibility appliances for cloud computing architectures |
US10609160B2 (en) | 2016-12-06 | 2020-03-31 | Nicira, Inc. | Performing context-rich attribute-based services on a host |
US10129186B2 (en) | 2016-12-07 | 2018-11-13 | Nicira, Inc. | Service function chain (SFC) data communications with SFC data in virtual local area network identifier (VLAN ID) data fields |
GB2558205B (en) | 2016-12-15 | 2019-07-03 | Arm Ip Ltd | Enabling communications between devices |
US10623309B1 (en) | 2016-12-19 | 2020-04-14 | International Business Machines Corporation | Rule processing of packets |
EP3340581B1 (en) | 2016-12-20 | 2022-02-23 | InterDigital CE Patent Holdings | Method for managing service chaining at a network equipment, corresponding network equipment |
US10212071B2 (en) * | 2016-12-21 | 2019-02-19 | Nicira, Inc. | Bypassing a load balancer in a return path of network traffic |
US10802858B2 (en) | 2016-12-22 | 2020-10-13 | Nicira, Inc. | Collecting and processing contextual attributes on a host |
US10574652B2 (en) | 2017-01-12 | 2020-02-25 | Zscaler, Inc. | Systems and methods for cloud-based service function chaining using security assertion markup language (SAML) assertion |
US20180203736A1 (en) | 2017-01-13 | 2018-07-19 | Red Hat, Inc. | Affinity based hierarchical container scheduling |
US10243835B2 (en) | 2017-02-02 | 2019-03-26 | Fujitsu Limited | Seamless service function chaining across domains |
US10892978B2 (en) | 2017-02-06 | 2021-01-12 | Silver Peak Systems, Inc. | Multi-level learning for classifying traffic flows from first packet data |
US10673785B2 (en) | 2017-02-16 | 2020-06-02 | Netscout Systems, Inc. | Flow and time based reassembly of fragmented packets by IP protocol analyzers |
US10243856B2 (en) | 2017-03-24 | 2019-03-26 | Intel Corporation | Load balancing systems, devices, and methods |
US10244034B2 (en) | 2017-03-29 | 2019-03-26 | Ca, Inc. | Introspection driven monitoring of multi-container applications |
US10698714B2 (en) | 2017-04-07 | 2020-06-30 | Nicira, Inc. | Application/context-based management of virtual networks using customizable workflows |
US10462047B2 (en) | 2017-04-10 | 2019-10-29 | Cisco Technology, Inc. | Service-function chaining using extended service-function chain proxy for service-function offload |
US10158573B1 (en) | 2017-05-01 | 2018-12-18 | Barefoot Networks, Inc. | Forwarding element with a data plane load balancer |
US10587502B2 (en) | 2017-05-16 | 2020-03-10 | Ribbon Communications Operating Company, Inc. | Communications methods, apparatus and systems for providing scalable media services in SDN systems |
US10333822B1 (en) | 2017-05-23 | 2019-06-25 | Cisco Technology, Inc. | Techniques for implementing loose hop service function chains price information |
US10348638B2 (en) | 2017-05-30 | 2019-07-09 | At&T Intellectual Property I, L.P. | Creating cross-service chains of virtual network functions in a wide area network |
US10628236B2 (en) | 2017-06-06 | 2020-04-21 | Huawei Technologies Canada Co., Ltd. | System and method for inter-datacenter communication |
US10567360B2 (en) | 2017-06-29 | 2020-02-18 | Vmware, Inc. | SSH key validation in a hyper-converged computing environment |
US10757138B2 (en) | 2017-07-13 | 2020-08-25 | Nicira, Inc. | Systems and methods for storing a security parameter index in an options field of an encapsulation header |
US10432513B2 (en) | 2017-07-14 | 2019-10-01 | Nicira, Inc. | Asymmetric network elements sharing an anycast address |
US11296984B2 (en) | 2017-07-31 | 2022-04-05 | Nicira, Inc. | Use of hypervisor for active-active stateful network service cluster |
CN111052686B (zh) | 2017-08-27 | 2022-03-29 | Nicira股份有限公司 | 在公共云中执行在线服务的方法和机器可读介质 |
US10637828B2 (en) | 2017-09-17 | 2020-04-28 | Mellanox Technologies, Ltd. | NIC with stateful connection tracking |
US10721095B2 (en) | 2017-09-26 | 2020-07-21 | Oracle International Corporation | Virtual interface system and method for multi-tenant cloud networking |
EP3688592B1 (en) | 2017-09-30 | 2024-04-03 | Oracle International Corporation | Dynamic migration of groups of containers |
US10637750B1 (en) | 2017-10-18 | 2020-04-28 | Juniper Networks, Inc. | Dynamically modifying a service chain based on network traffic information |
US11120125B2 (en) | 2017-10-23 | 2021-09-14 | L3 Technologies, Inc. | Configurable internet isolation and security for laptops and similar devices |
US10797966B2 (en) | 2017-10-29 | 2020-10-06 | Nicira, Inc. | Service operation chaining |
US20190140863A1 (en) | 2017-11-06 | 2019-05-09 | Cisco Technology, Inc. | Dataplane signaled bidirectional/symmetric service chain instantiation for efficient load balancing |
US10757077B2 (en) | 2017-11-15 | 2020-08-25 | Nicira, Inc. | Stateful connection policy filtering |
US10708229B2 (en) | 2017-11-15 | 2020-07-07 | Nicira, Inc. | Packet induced revalidation of connection tracker |
US11012420B2 (en) | 2017-11-15 | 2021-05-18 | Nicira, Inc. | Third-party service chaining using packet encapsulation in a flow-based forwarding element |
US10938716B1 (en) | 2017-11-29 | 2021-03-02 | Riverbed Technology, Inc. | Preserving policy with path selection |
US11095617B2 (en) | 2017-12-04 | 2021-08-17 | Nicira, Inc. | Scaling gateway to gateway traffic using flow hash |
US11075888B2 (en) | 2017-12-04 | 2021-07-27 | Nicira, Inc. | Scaling gateway to gateway traffic using flow hash |
WO2019138415A1 (en) | 2018-01-12 | 2019-07-18 | Telefonaktiebolaget Lm Ericsson (Publ) | Mechanism for control message redirection for sdn control channel failures |
US11888899B2 (en) | 2018-01-24 | 2024-01-30 | Nicira, Inc. | Flow-based forwarding element configuration |
US10536285B2 (en) | 2018-01-25 | 2020-01-14 | Juniper Networks, Inc. | Multicast join message processing by multi-homing devices in an ethernet VPN |
WO2019147316A1 (en) | 2018-01-26 | 2019-08-01 | Nicira, Inc. | Specifying and utilizing paths through a network |
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 |
CN110113291B (zh) | 2018-02-01 | 2020-10-13 | 上海诺基亚贝尔股份有限公司 | 用于在业务功能链域之间进行互通的方法和设备 |
CN110166409B (zh) | 2018-02-13 | 2021-12-28 | 华为技术有限公司 | 设备接入方法、相关平台及计算机存储介质 |
CN111801654A (zh) | 2018-03-01 | 2020-10-20 | 谷歌有限责任公司 | 高可用性的多单租户服务 |
US10860367B2 (en) | 2018-03-14 | 2020-12-08 | Microsoft Technology Licensing, Llc | Opportunistic virtual machine migration |
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 |
US11108694B2 (en) | 2018-03-30 | 2021-08-31 | Ricoh Company, Ltd. | Communication system and upload method |
US10749751B2 (en) | 2018-05-02 | 2020-08-18 | Nicira, Inc. | Application of profile setting groups to logical network entities |
US20190362004A1 (en) | 2018-05-23 | 2019-11-28 | Microsoft Technology Licensing, Llc | Data platform fabric |
US10897392B2 (en) | 2018-06-11 | 2021-01-19 | Nicira, Inc. | Configuring a compute node to perform services on a host |
US11283676B2 (en) | 2018-06-11 | 2022-03-22 | Nicira, Inc. | Providing shared memory for access by multiple network service containers executing on single service machine |
US20190377604A1 (en) | 2018-06-11 | 2019-12-12 | Nuweba Labs Ltd. | Scalable function as a service platform |
US10819571B2 (en) | 2018-06-29 | 2020-10-27 | Cisco Technology, Inc. | Network traffic optimization using in-situ notification system |
US10997177B1 (en) | 2018-07-27 | 2021-05-04 | Workday, Inc. | Distributed real-time partitioned MapReduce for a data fabric |
US10645201B2 (en) | 2018-07-31 | 2020-05-05 | Vmware, Inc. | Packet handling during service virtualized computing instance migration |
US11445335B2 (en) | 2018-08-17 | 2022-09-13 | Huawei Technologies Co., Ltd. | Systems and methods for enabling private communication within a user equipment group |
US11184397B2 (en) | 2018-08-20 | 2021-11-23 | Vmware, Inc. | Network policy migration to a public cloud |
US10986017B2 (en) | 2018-08-23 | 2021-04-20 | Agora Lab, Inc. | Large-scale real-time multimedia communications |
US10977111B2 (en) | 2018-08-28 | 2021-04-13 | Amazon Technologies, Inc. | Constraint solver execution service and infrastructure therefor |
CN116319541A (zh) | 2018-09-02 | 2023-06-23 | Vm维尔股份有限公司 | 逻辑网关处的服务插入方法、设备和系统 |
US11595250B2 (en) | 2018-09-02 | 2023-02-28 | Vmware, Inc. | Service insertion at logical network gateway |
US10944673B2 (en) | 2018-09-02 | 2021-03-09 | Vmware, Inc. | Redirection of data messages at logical network gateway |
US11032190B2 (en) | 2018-09-12 | 2021-06-08 | Corsa Technology Inc. | Methods and systems for network security universal control point |
CN109213573A (zh) | 2018-09-14 | 2019-01-15 | 珠海国芯云科技有限公司 | 基于容器的虚拟桌面的设备隔离方法及装置 |
US10834004B2 (en) | 2018-09-24 | 2020-11-10 | Netsia, Inc. | Path determination method and system for delay-optimized service function chaining |
US10979347B2 (en) | 2018-10-27 | 2021-04-13 | Cisco Technology, Inc. | Software version aware networking |
US11012353B2 (en) | 2018-11-02 | 2021-05-18 | Cisco Technology, Inc. | Using in-band operations data to signal packet processing departures in a network |
US10944630B2 (en) | 2018-11-20 | 2021-03-09 | Cisco Technology, Inc. | Seamless automation of network device migration to and from cloud managed systems |
US11463511B2 (en) | 2018-12-17 | 2022-10-04 | At&T Intellectual Property I, L.P. | Model-based load balancing for network data plane |
US10855588B2 (en) | 2018-12-21 | 2020-12-01 | Juniper Networks, Inc. | Facilitating flow symmetry for service chains in a computer network |
US10749787B2 (en) | 2019-01-03 | 2020-08-18 | Citrix Systems, Inc. | Method for optimal path selection for data traffic undergoing high processing or queuing delay |
US11012351B2 (en) | 2019-02-22 | 2021-05-18 | Vmware, Inc. | Service path computation for service insertion |
US11042397B2 (en) | 2019-02-22 | 2021-06-22 | Vmware, Inc. | Providing services with guest VM mobility |
US10951691B2 (en) | 2019-03-05 | 2021-03-16 | Cisco Technology, Inc. | Load balancing in a distributed system |
US20200344088A1 (en) | 2019-04-29 | 2020-10-29 | Vmware, Inc. | Network interoperability support for non-virtualized entities |
US11184274B2 (en) | 2019-05-31 | 2021-11-23 | Microsoft Technology Licensing, Llc | Multi-cast support for a virtual network |
US10965592B2 (en) | 2019-05-31 | 2021-03-30 | Juniper Networks, Inc. | Inter-network service chaining |
US11025545B2 (en) | 2019-06-06 | 2021-06-01 | Cisco Technology, Inc. | Conditional composition of serverless network functions using segment routing |
DE102020113346A1 (de) | 2019-07-02 | 2021-01-07 | Hewlett Packard Enterprise Development Lp | Bereitstellen von service-containern in einer adaptervorrichtung |
US11561866B2 (en) | 2019-07-10 | 2023-01-24 | Commvault Systems, Inc. | Preparing containerized applications for backup using a backup services container and a backup services container-orchestration pod |
LU101361B1 (en) | 2019-08-26 | 2021-03-11 | Microsoft Technology Licensing Llc | Computer device including nested network interface controller switches |
US20210073736A1 (en) | 2019-09-10 | 2021-03-11 | Alawi Holdings LLC | Computer implemented system and associated methods for management of workplace incident reporting |
US20210120080A1 (en) | 2019-10-16 | 2021-04-22 | Vmware, Inc. | Load balancing for third party services |
US11140218B2 (en) | 2019-10-30 | 2021-10-05 | Vmware, Inc. | Distributed service chain across multiple clouds |
WO2021086462A1 (en) | 2019-10-30 | 2021-05-06 | Vmware, Inc. | Distributed service chain across multiple clouds |
US20210136140A1 (en) | 2019-10-30 | 2021-05-06 | Vmware, Inc. | Using service containers to implement service chains |
US11283717B2 (en) | 2019-10-30 | 2022-03-22 | Vmware, Inc. | Distributed fault tolerant service chain |
US11388228B2 (en) | 2019-10-31 | 2022-07-12 | Keysight Technologies, Inc. | Methods, systems and computer readable media for self-replicating cluster appliances |
US11157304B2 (en) | 2019-11-01 | 2021-10-26 | Dell Products L.P. | System for peering container clusters running on different container orchestration systems |
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 |
US11836158B2 (en) | 2020-02-03 | 2023-12-05 | Microstrategy Incorporated | Deployment of container-based computer environments |
US11522836B2 (en) | 2020-02-25 | 2022-12-06 | Uatc, Llc | Deterministic container-based network configurations for autonomous vehicles |
US11422900B2 (en) | 2020-03-02 | 2022-08-23 | Commvault Systems, Inc. | Platform-agnostic containerized application data protection |
US11627124B2 (en) | 2020-04-02 | 2023-04-11 | Vmware, Inc. | Secured login management to container image registry in a virtualized computer system |
US11372668B2 (en) | 2020-04-02 | 2022-06-28 | Vmware, Inc. | Management of a container image registry in a virtualized computer system |
US11368387B2 (en) | 2020-04-06 | 2022-06-21 | Vmware, Inc. | Using router as service node through logical service plane |
US11467886B2 (en) | 2020-05-05 | 2022-10-11 | Red Hat, Inc. | Migrating virtual machines between computing environments |
US20220060467A1 (en) | 2020-08-24 | 2022-02-24 | Just One Technologies LLC | Systems and methods for phone number certification and verification |
US11228519B1 (en) | 2021-01-21 | 2022-01-18 | Zscaler, Inc. | Detection of latency, packet drops, and network hops through a TCP tunnel using ICMP and UDP probes |
-
2015
- 2015-08-31 US US14/841,654 patent/US11496606B2/en active Active
- 2015-08-31 US US14/841,648 patent/US10129077B2/en active Active
- 2015-08-31 US US14/841,659 patent/US10516568B2/en active Active
- 2015-08-31 US US14/841,649 patent/US11296930B2/en active Active
- 2015-08-31 US US14/841,647 patent/US10225137B2/en active Active
- 2015-09-30 WO PCT/US2015/053332 patent/WO2016054272A1/en active Application Filing
- 2015-09-30 EP EP15782148.9A patent/EP3202109B1/en active Active
- 2015-09-30 CN CN202010711875.8A patent/CN112291294A/zh active Pending
- 2015-09-30 CN CN201580057270.9A patent/CN107005584B/zh active Active
-
2022
- 2022-10-29 US US17/976,783 patent/US20230052818A1/en active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050249199A1 (en) * | 1999-07-02 | 2005-11-10 | Cisco Technology, Inc., A California Corporation | Load balancing using distributed forwarding agents with application based feedback for different virtual machines |
CN1689369A (zh) * | 2002-10-08 | 2005-10-26 | 诺基亚公司 | 用于经由接入网建立连接的方法和系统 |
US20090327464A1 (en) * | 2008-06-26 | 2009-12-31 | International Business Machines Corporation | Load Balanced Data Processing Performed On An Application Message Transmitted Between Compute Nodes |
CN103795805A (zh) * | 2014-02-27 | 2014-05-14 | 中国科学技术大学苏州研究院 | 基于sdn的分布式服务器负载均衡方法 |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11805056B2 (en) | 2013-05-09 | 2023-10-31 | Nicira, Inc. | Method and system for service switching using service tags |
US11805036B2 (en) | 2018-03-27 | 2023-10-31 | Nicira, Inc. | Detecting failure of layer 2 service using broadcast messages |
CN112673596A (zh) * | 2018-09-02 | 2021-04-16 | Vm维尔股份有限公司 | 逻辑网关处的服务插入 |
CN112673596B (zh) * | 2018-09-02 | 2023-05-02 | Vm维尔股份有限公司 | 逻辑网关处的服务插入方法、设备和系统 |
CN113454598A (zh) * | 2019-02-22 | 2021-09-28 | Vm维尔股份有限公司 | 提供具有访客vm移动性的服务 |
CN114175583A (zh) * | 2019-07-29 | 2022-03-11 | 思科技术公司 | 自愈网络中的系统资源管理 |
CN114175583B (zh) * | 2019-07-29 | 2023-08-18 | 思科技术公司 | 自愈网络中的系统资源管理 |
CN114342342A (zh) * | 2019-10-30 | 2022-04-12 | Vm维尔股份有限公司 | 跨多个云的分布式服务链 |
US11722559B2 (en) | 2019-10-30 | 2023-08-08 | Vmware, Inc. | Distributed service chain across multiple clouds |
CN114342330A (zh) * | 2019-12-12 | 2022-04-12 | Vm维尔股份有限公司 | 收集和分析关于与dpi参数关联的流的数据 |
US11734043B2 (en) | 2020-12-15 | 2023-08-22 | Vmware, Inc. | Providing stateful services in a scalable manner for machines executing on host computers |
WO2023005745A1 (zh) * | 2021-07-26 | 2023-02-02 | 华为技术有限公司 | 报文转发方法、装置及系统、计算机可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
US20230052818A1 (en) | 2023-02-16 |
CN107005584B (zh) | 2020-08-11 |
US11496606B2 (en) | 2022-11-08 |
US10225137B2 (en) | 2019-03-05 |
US20160094384A1 (en) | 2016-03-31 |
US10516568B2 (en) | 2019-12-24 |
US20160094633A1 (en) | 2016-03-31 |
US20160094661A1 (en) | 2016-03-31 |
CN112291294A (zh) | 2021-01-29 |
US20160094457A1 (en) | 2016-03-31 |
EP3202109A1 (en) | 2017-08-09 |
WO2016054272A1 (en) | 2016-04-07 |
US10129077B2 (en) | 2018-11-13 |
US20160094632A1 (en) | 2016-03-31 |
US11296930B2 (en) | 2022-04-05 |
EP3202109B1 (en) | 2021-03-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107005584A (zh) | 内联服务交换机 | |
CN103930882B (zh) | 具有中间盒的网络架构 | |
US10924325B2 (en) | Maps having a high branching factor | |
US11573840B2 (en) | Monitoring and optimizing interhost network traffic | |
CN104717137B (zh) | 管理覆盖网络中的数据流的方法和系统 | |
CN107078921A (zh) | 用于基于商业意图驱动策略的网络业务表征、监视和控制的方法和系统 | |
CN103546451B (zh) | 用于管理覆盖网络中的流量的系统和方法 | |
CN106105115B (zh) | 用于由服务节点始发的服务链的方法、介质、及装置 | |
CN110168499A (zh) | 在主机上执行上下文丰富的基于属性的服务 | |
CN107852604A (zh) | 用于提供全局虚拟网络(gvn)的系统和方法 | |
CN109417517A (zh) | 针对应用提供数据平面服务 | |
CN105791175B (zh) | 软件定义网络中控制传输资源的方法及设备 | |
CN107070983A (zh) | 一种基于地址转发的负载均衡方法、设备和系统 | |
CN107077340A (zh) | 负载均衡 | |
CN107852368A (zh) | 用于网络服务的高度可用的服务链 | |
CN106919242A (zh) | 服务器系统及其管理方法及计算机可读式存储多媒体 | |
CN110226155A (zh) | 在主机上收集和处理上下文属性 | |
CN107003860A (zh) | 一种软件定义网络控制器及其创建方法 | |
CN107210933A (zh) | 用于向附接的装备提供硬件资源信息的机制 | |
CN109417556A (zh) | 用于安全服务协作的系统和方法 | |
Budhraja et al. | Risk-based packet routing for privacy and compliance-preserving SDN | |
CN101686170A (zh) | 基于多出口用户路由的分级传输品质保障系统 | |
US11032138B2 (en) | Managing traffic control in a network mitigating DDOS | |
Kassem et al. | Utilisation profiles of bridging function chain for healthcare use cases | |
Shakeri et al. | Tracking container network connections in a Digital Data Marketplace with P4 |
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 |