CN109804607A - 容错微服务环境中的无状态处理的系统和方法 - Google Patents
容错微服务环境中的无状态处理的系统和方法 Download PDFInfo
- Publication number
- CN109804607A CN109804607A CN201780047200.4A CN201780047200A CN109804607A CN 109804607 A CN109804607 A CN 109804607A CN 201780047200 A CN201780047200 A CN 201780047200A CN 109804607 A CN109804607 A CN 109804607A
- Authority
- CN
- China
- Prior art keywords
- micro services
- context
- data
- state
- safe handling
- 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
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
- H04L63/1425—Traffic logging, e.g. anomaly detection
-
- 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/06—Management of faults, events, alarms or notifications
- H04L41/0654—Management of faults, events, alarms or notifications using network fault recovery
- H04L41/0668—Management of faults, events, alarms or notifications using network fault recovery by dynamic selection of recovery network elements, e.g. replacement by the most appropriate element after failure
-
- 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/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
-
- 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/20—Network architectures or network communication protocols for network security for managing network security; network security policies in general
-
- 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
- H04L67/142—Managing session states for stateless protocols; Signalling session states; State transitions; Keeping-state mechanisms
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
公开了一种与网络安全有关的系统、方法和非瞬态计算机可读。具体地,所描述的实施例总体上涉及容错微服务环境中的无状态处理的系统和方法。在一个示例中,公开了一种方法,其包括:由第一微服务传送分组数据和与该分组数据相关联的上下文;由第二微服务接收分组数据和上下文,该第二微服务用于:使用上下文来确定要执行什么安全处理,对分组数据执行安全处理,以及将所得到的数据和上下文传输到第三微服务;以及由第三微服务接收所得到的数据和上下文,该第三微服务用于:使用上下文来确定要执行什么安全处理,并对所得到的数据执行安全处理。
Description
技术领域
本文描述的实施例总体上涉及网络安全。具体地,所描述的实施例总体上涉及容错微服务环境中的无状态处理的系统和方法。
背景技术
云计算服务的扩展已导致服务器集合提供计算容量来运行各种客户机应用。一些客户机-服务器连接使用专用网络。其他客户机-服务器连接使用虚拟专用网络以便就像这些客户机-服务器连接已由专用网络直接连接那样通过公共网络来交换数据。云计算服务的扩展已导致数据中心向主机服务器的扩展。一些被托管的服务器被容纳在多租户数据中心中,并且与其他潜在不相关的服务器共享资源。
数据安全和监测网络通信量在这样的数据中心中是有用的。在服务器与客户机应用之间行进的数据为了安全需要被监测和处理。监测高带宽数据中心中的安全通常使用串联工作的许多安全服务器。要解决的一个问题是如何从许多服务器中的一个服务器的故障中恢复。
附图说明
通过阅读以下说明书和所附权利要求书并参考附图,本文公开的实施例的各种优点对于本领域技术人员将变得显而易见,在附图中:
图1是图示计算机硬件的框图,该计算机硬件用于从存储器加载网络安全系统微服务,并由处理器执行这些网络安全系统微服务;
图2图示使用安全微服务实现三倍横向扩展(scale out)的可缩放安全架构的实施例;
图3图示根据实施例的微服务的任意横向扩展;
图4是图示根据实施例的安全服务的框图,该安全服务用于通过路由网络监测应用与一个或多个服务器之间的通信量;
图5是图示根据实施例的应用数据在通过安全微服务的层级结构之后遍历到服务器的流程框图;
图6是图示应用数据流过无状态处理容错微服务环境的实施例的流程框图;
图7是图示信道状态查找系统的实施例的另一流程框图;
图8是图示根据实施例的微服务处理流程的流程图;以及
图9图示在安全服务架构中的整个处理过程中创建上下文和与上下文相关联的数据的实施例。
具体实施方式
在以下描述中,陈述了众多具体细节。然而,应当理解,可在没有这些具体细节的情况下实践本公开的实施例。在其他实例中,没有详细示出公知的电路、结构和技术,以避免使对本说明书的理解含糊。
说明书中对“一个实施例”、“实施例”、“示例实施例”等等的引用表示所描述的实施例可包括特定特征、结构或特性,但是,每一个实施例不必包括该特定特征、结构或特性。此外,此类短语不一定是指同一实施例。进一步地,当结合实施例来描述特定特征、结构或特性时,应当认为,无论是否明确地描述,结合其他实施例来实现此类特征、结构或特性在本领域的技术人员的知识范围内。
当部署其中各个组件被负载平衡的分布式网络处理系统时,管理状态的问题通常限制架构的规模或性能。如果在本地维护状态,则在每个组件内,无论负载或排队条件如何,处理通常都将需要将对相同的流或连接的未来处理路由到相同组件。另外,有状态组件在其上执行的服务器、节点或虚拟机的故障可能导致状态丢失并且需要应用超时并重新连接到服务器。
在成对的组件(诸如,主动-主动网络设备)之间分配状态需要每个状态更新的同步,并且是性能限制。此类解决方案允许应用在故障转移期间维持连接(因为状态总是被复制到活跃伙伴),但是不允许处理能力扩展到超出状态同步基础设施的能力。作为示例,如果两个主动-主动服务器通过允许快速传输状态数据的快速接口连接,则利用该链路的应用无法扩展到超出服务器本身的约束。
本文公开的实施例允许微服务的层级结构执行安全服务内的网络通信量的有状态处理。在通过冗余消息传递服务访问的冗余状态服务内的微服务外部维持状态。冗余状态服务提供用于与网络通信量的处理相关联的上下文的状态以及用于处理安全服务的状态,诸如,深度分组检查(DPI)状态、加密状态,等等。
如将详细描述的,上下文用作指示关于要执行的服务和处理的级别的微服务层级结构的多个级别的指示。在微服务之间利用分组和内容数据传输上下文,从而允许层级结构中的后续微服务放弃状态查找和修改,并允许故障转移操作作为负载平衡的一部分透明地发生。
图1是图示使用微服务的可缩放微服务架构的组件的实施例的框图。网络安全系统微服务被存储在存储器(例如,诸如随机存取存储器(RAM)之类的易失性存储器和/或诸如盘之类的非易失性存储器)中,并且由一个或多个硬件处理器或处理器核执行。由用于执行特定安全服务的计算机可执行指令组成的网络安全系统微服务基于跨可用的物理服务器的配置而被部署。典型地,每个微服务经由虚拟底盘106的背板接收配置和任务,并且将状态、统计和其他信息返回到该背板。微服务的共同属性是存储器与其他微服务分离以及存储器受保护而免受其他微服务影响。以此方式,在不影响其他微服务的情况下,单独的微服务可被移动至另一物理服务器或异常地终止。
由安全系统处理的数据使用数据平面从微服务转移至另一(较高层级结构的)微服务。在一些实施例中,在此类转移期间,较低的微服务(基于配置、当前统计和其他信息)作出关于要利用哪个较高层级结构的微服务的决策。此类决策可以构成负载平衡决策以确保较高层级结构微服务被高效地利用。在其他实施例中,要利用哪个微服务的决策由更中心的实体作出。
如图所示,网络安全系统利用硬件处理器102(诸如,中央处理单元(CPU)或其一个或多个核、图形处理单元(GPU)或其一个或多个核、或加速处理单元(APU)或其一个或多个核)来执行存储在存储器104(例如,诸如随机存取存储器(RAM)之类的易失性存储器和/或诸如盘之类的非易失性存储器)中的微服务。网络接口128(例如,有线的或无线的结构或互连)提供用于与数据中心通信的装置。网络安全系统可以如下文中进一步所述使用微服务来检查通信量,检测威胁,并且以其他方式保护数据中心。
现在更详细地讨论提供以上能力的网络安全系统的实施例。网络安全系统将安全性添加到数据中心或增强数据中心的安全性。在实施例中,以(例如,已下载的)种子软件应用的形式来实现网络安全系统。种子软件应用使数据中心中的主机上的网络安全系统的微服务实例化。如本文所使用,微服务容器是指微服务运行的地方,最显著地是指虚拟机。一旦被部署,网络安全系统就利用(如上文详述的)硬件处理器102、存储器104和网络接口128。在许多场景中,可以使用现有硬件和/或不必针对特定功能购买特定机架设备来添加/配置安全性。种子软件应用可以安装在各种各样的主机中的任一个上,不论这些主机是慢的或快的、低成本的或高成本的、通用的或定制的、地理上分散的、冗余方案的部分、或具有常规备份的系统的部分。
一旦被启动,如也在下文中进一步描述,在一些实施例中,网络安全系统将利用网络接口128来探索数据中心,以便根据需要发现存在什么网络段、要应用于各种网络段的安全、什么主机和硬件资源是可用的、以及附加配置信息。在实施例中,数据中心自身包括具有管理程序的若干机器或包括物理硬件,并且网络安全系统100提供微服务以与那些内部虚拟机或物理硬件中的一个或多个通信并且保护它们。在执行数据中心发现之后,在一些实施例中,网络安全系统随后将通过用户界面或通过与现有企业管理软件的连接来提供或建议要被选择的可用安全工具。在一个实施例中,一旦被配置,网络安全系统就被“内联地”部署,从而基本上接收前往数据中心的所有分组,允许网络安全系统在可疑的通信量到达数据中心之前拦截并阻止它。利用对数据中心的理解,网络安全系统100部署微服务以检查数据中心各处、而不仅是在入口处的通信量。在一些实施例中,网络安全系统以“仅复制”配置被部署,在该“仅复制”配置下,网络安全系统监测通信量、检测威胁、并且生成警告,但是在通信量到达数据中心之前不拦截通信量。
再次参考图1,尽管未示出,但是在一个实施例中,硬件处理器102包括一个或多个级别的高速缓存存储器。如图所示,存储器104具有存储在其中的微服务108、110、112、114、116、118、120和122(108-122)以及自身是微服务的虚拟底盘106。在实施例中,微服务的尺寸是小的,由相对少量的指令组成。在实施例中,微服务彼此独立。如图所示,微服务108-122是从存储器加载并且由硬件处理器102执行的微服务。那些微服务包括数据路径安全微服务,例如,TCP/IP、SSL、DPI或DPL检查微服务,如下文参考图2和图3进一步所描述。微服务还可以包括管理微服务,例如,下文参考图2和图3进一步描述的用于管理微服务的底盘控制器、配置微服务、基础设施发现微服务、用于存储数据的数据库微服务、以及用于接收来自外部安全云的策略更新的策略更新微服务、以及用于接收来自各种源的策略数据并且用于产生将由微服务使用的二进制策略输出的编译器,仅举数例。
网络安全系统经由网络接口128接收去往/来自数据中心的通信量。在一个实施例中,网络安全系统被内联地放置以检查通信量,并且可能在威胁到达或离开数据中心之前拦截威胁。在替代实施例中,网络安全系统监测前往或离开数据中心的通信量,在这种情况下,网络安全系统检测威胁并且生成警告,但是不阻止数据。硬件处理器102随后对数据执行各种数据安全微服务。例如,如下文中间参考图2和图3进一步所描述,典型地,通信量首先传入并且通过段微服务,随后是TCP/IP检查微服务,随后是SSL微服务,随后是DPI微服务,随后是NOX微服务,并且随后是DLP微服务。然而,可以不启用这些服务中的一个或多个。在一些实施例中,段微服务驻留在网络段内并且充当数据分组的进入点并且将分组转发至适当的微服务以用于进一步分析。如本文所使用的数据路径微服务是指检查并分析网络通信量的各种微服务,诸如TCP、TLS、DPI、NOX或DLP。TCP微服务例如是指能够处理任何层4-6网络分组的分组处置微服务并且包括防火墙的部分。TLS微服务例如是指传输层安全微服务,其解密/重新加密连接。DPI微服务例如是指深度分组检查微服务并且处置层7检查。NOX微服务例如是指网络对象提取器微服务,并且结合DPI一起工作以组装来自各个分组的对象并且将它们传递至其他服务。DLP微服务例如是指数据丢失防止微服务,其检测并防止数据丢失。另一方面,控制路径微服务是在管理平面中实例化并且构成管理平面的各种微服务,诸如,工厂、编译器、配置、基础设施发现、数据库、信使、定标器、和底盘控制器。在一个实施例中,由前述微服务检测到的威胁将被报告给底盘控制器微服务,该底盘控制器微服务采取补救措施。
在实施例中,使用经由网络接口128从因特网加载的计算机可执行指令来实现微服务108-122。例如,在实施例中,利用从网站或在线存储站点下载的计算机可执行指令来实现微服务。在一些实施例中,微服务108-122被加载到存储器104中。在各实施例中,使用被加载到非瞬态计算机可读介质上以及从非瞬态计算机可读介质接收的计算机可执行指令来实现微服务,非瞬态计算机可读介质诸如数字介质,包括另一盘驱动器、CD、CDROM、DVD、USB闪存驱动器、闪存、安全数字(SD)存储卡、存储卡,但不限于此。在一个实例中,从数字介质接收的微服务被存储到存储器104中。实施例不限于该上下文。在进一步的实施例中,数字介质是组成诸如处理器和存储器之类的硬件元件的组合的数据源。
在大部分实施例中,网络安全系统在数据中心计算机上运行。然而,在替代实施例中,网络安全系统被安装在各种各样的替代计算平台中的任一个上并在各种各样的替代计算平台中的任一个上运行,替代计算平台的范围从低成本到高成本并且从低功率到高功率。在一些实施例中,网络安全系统被安装在低成本的通用服务器计算机上并在低成本的通用服务器计算机上运行,或者在一些实施例中,被安装在低成本的机架安装式服务器上并在低成本的机架安装式服务器上运行。如图所示,硬件处理器102是单核处理器。在替代实施例中,硬件处理器102是多核处理器。在替代实施例中,硬件处理器102是大规模并行处理器。
在一些实施例中,虚拟底盘106和微服务108-122可以被托管在用于要被保护的数据中心的各种各样的硬件平台中的任一个上。下面的表1列出并描述多个示例性数据中心环境,其中的任一个托管虚拟底盘106和微服务108-122:
表1用于托管虚拟底盘106的环境
在一些示例中,网络安全系统使用可用资源来横向扩展以容纳更高通信量或负载。在示例性实施例中,根据需要动态地横向扩展或收缩硬件处理器102(CPU)和存储器104:如果横向扩展,则添加附加的CPU和存储器,而如果横向收缩,则使一些CPU和/或存储器掉电。执行该横向扩展以将附加的CPU和存储器分配给安全层级结构的需要这些附加的CPU和存储器的那些部分,同时不将附加的CPU和存储器分配给安全层级结构的可以利用其现有分配来容纳更高通信量的那些部分。
微服务的共同属性是存储器与其他微服务的分离以及保护存储器免受其他微服务影响。以此方式,单独的微服务可在不影响其他微服务的情况下被移动至另一物理服务器或可异常地终止。可从线程中将微服务区分出来,因为线程一般在共享存储器空间中操作,并且存在于这些线程在其上被产生的操作系统的界限内。
图2图示根据实施例的使用微服务的三倍横向扩展。在该示例中,仅单个微服务(DPI)将受益于附加资源。如图所示,通过利用可缩放的微服务架构200,安全服务层级结构的每个层被独立地缩放和配置以使对下一层级结构级别的经处理的数据的供应负载平衡,该可缩放的微服务架构200包括DLP微服务204、NOX微服务206、DPI微服务208、SSL/TLS微服务210、TCP/IP微服务212和段微服务214。如图所示,数据中心216包括数据中心机架218,该数据中心机架218包括物理服务器A 220、物理服务器B 222和物理服务器C 224。如图所示,数据中心机架226包括物理服务器X 228、物理服务器Y 230和物理服务器Z 232。DPI微服务208已经被横向扩展3倍,并且在该实例中被指派为作为物理服务器B 222和物理服务器C224上的微服务4-6被执行。可缩放安全架构的其余微服务被示出为由物理服务器A 220、物理服务器X 228、物理服务器Y 230和物理服务器Z 232实现。配置微服务202创建配置背板和数据平面,该配置背板和数据平面被部署为每个物理服务器上的用于接收安全服务的软件组件。该创建过程采取以下形式:配置路由规则;预留网络地址空间(诸如,子网);以及将虚拟环境配置为利用所预留的地址空间的部分作为网关以保护进入和离开服务器的网络通信的安全。因此,背板和数据平面两者均可以被视为由安全系统管理的虚拟网络。所有安全微服务随后可以利用这些网络在它们自身之间传送分组、内容、状态和其他信息。背板和数据平面的属性被配置为拒绝来自安全系统外部的分组通信量,并且在微服务之间路由信息,不论物理服务器和虚拟环境配置如何。
图3图示根据实施例的任意横向扩展。如图所示,可缩放安全架构300包括配置微服务302、DLP(2X)微服务304(2倍横向扩展)、NOX微服务306、DPI(2X)微服务308(3倍横向扩展)、SSL/TLS微服务310、TCP/IP(3X)微服务312(3倍横向扩展)、和段微服务314。如图所示,配置微服务316提供从最低层级结构到最高层级结构的(318、320、322、324、326和328)11个微服务,并且将它们配置为经由背板彼此通信。微服务由数据中心330中的物理服务器实现。
图4是根据实施例的系统级框图。根据实施例,一个或多个安全服务410通过路由网络408监测应用416与一个或多个服务器404和406之间的通信量。安全服务410是用于保护来自/去往应用416以及服务器404和406的通信量安全的微服务组。这些微服务不必约束至诸如服务器404或服务器406之类的一个物理服务器。例如,可在服务器404上执行安全服务410的一个或多个微服务,并且可在服务器406上执行安全服务410的其他微服务。在一些实施例中,在不是正在进行保护的服务器上执行安全服务410。
路由网络408提供服务器404、服务器406、安全服务410与应用416之间的连接性,并且可支持由本文中公开的实施例采用的封装协议。在一些实施例中,响应于服务器404和406的管理程序配置来部分地配置路由网络408。
借助于被包括在信道数据封装分组中的路由信息,如下文中进一步所解释,在应用416与服务器404和/或服务器406之间行进的数据被路由至正确的服务器,并且被保持与在应用与其他服务器之间行进的数据分离。相应地,本质上在运行安全服务410的服务器与服务器404之间创建了专用网络412。类似地,本质上在运行安全服务410的服务器与服务器406之间创建了专用网络414。
图5是图示根据实施例的应用数据在通过安全微服务的层级结构之后遍历到服务器的流程框图。如图所示,该流程开始于安全服务504从应用502接收到网络数据分组。安全服务504将分组转发506到接口微服务508,该接口微服务508生成信道数据封装分组510,该信道数据封装分组510封装三个分组A、B和C、以及上下文X。如图所示,信道数据封装分组510封装三个分组,但是在替代实施例中,封装分组的数量可以变化,不限于此。在一些实施例中,至少基于分组A、B和C的头部生成上下文X。在一些实施例中,通过查找诸如分组的源和/或目的地的IP地址、端口和mac地址之类的分组头部字段来生成上下文X。在一些实施例中,上下文X的生成包括利用从虚拟化环境获得的接口标识符。上下文X的生成可以通过查找表中的头部字段和其他数据、头部字段的散列和其他数据或另一种方法来实现,凭借该另一种方法,要针对其应用公共安全策略的分组将具有公共上下文或上下文的公共部分,诸如位字段。
上下文X可以被认为是描述负责生成分组A、B和C的通信量流、源机器或应用的标识符。该标识符可以是直接的(诸如,用作表查找的ID)、间接的(诸如,用于访问数据结构的指针)或向微服务指示关于用于处理分组A、B和C的策略和处理的某种其他方法。作为示例,可以通过对诸如IP地址、TCP端口、接口名称(或MAC地址)或其他分组属性之类的头部字段执行散列、最常前缀匹配或查找来生成上下文X。查找可以是精确匹配、最长前缀匹配或用于将分组流与要使用的相同安全处理相关联的其他方法。然后,可由安全服务(诸如,DPI服务)使用所生成的上下文来确定在扫描来自分组A、B和C(以及作为相同通信量流的一部分的其他分组)的数据时应当利用哪些规则。该信息可以嵌入在上下文中(作为位字段或其他信息),可以通过间接方式(诸如,由另一个服务进行表或数据结构查找)获得,或者基于此类信息的任何组合以编程方式生成。
可以通过在接口微服务处查找来生成上下文,并且该上下文被包括在分组数据到传输控制协议(TCP)重组服务的传送中。来自TCP微服务的经重组的内容被传送到深度分组检查(DPI)微服务或安全套接层(SSL)微服务,并且以相同的上下文传送。通过将该上下文维持在贯穿微服务层级结构的数据传输的封装中,与该上下文相关联的处理指示变为共享的只读资源(相对于微服务),该共享的只读资源将仅会很少使用有状态的更新。
接口微服务508将信道数据封装分组510传送512到TCP/IP微服务514。如图所示,信道数据封装分组516包括上下文X和内容Y,该上下文X和内容Y对应于信道数据封装分组510的分组A、B和C。在进行信道数据封装分组516的安全处理之后,TCP/IP微服务514将其传送518到DPI微服务520。如图所示,信道数据封装分组522包括上下文X和内容Y,该上下文X和内容Y对应于信道数据封装分组510的分组A、B和C。在进行信道数据封装分组522的安全处理之后,DPI微服务520生成信道数据封装分组24,如图所示,该信道数据封装分组24包括上下文X、DPI负载Z和DPI时间戳T。经封装的信道数据可以用包括时间戳和负载度量的属性来标记。时间戳可以参考微服务处理的持续时间、微服务处理开始的时间或者与处理经封装的信道数据相关联的另一时域属性。负载度量可以参考处理经封装的信道数据的微服务的相对或绝对加载。
如图所示,DPI微服务520经由路径526将信道数据封装分组524传送到TCP/IP微服务514,该TCP/IP微服务514使用DPI负载和DPI时间戳信息来通知未来的负载平衡决策。如图所示,TCP/IP微服务514生成信道数据封装分组528,该信道数据封装分组528包括上下文X、TCPI/IP负载Z和TCP/IP时间戳T。如图所示,TCP/IP微服务514经由路径530将信道数据封装分组528传送到接口微服务508,该接口微服务508使用TCP/IP负载和TCP/IP时间戳信息来通知未来的负载平衡决策。当接口微服务508经由路径532将分组传送到安全服务504时,流程完成,该安全服务504将这些分组传送到服务器534。
如图所示,DPI微服务520将信道数据封装分组524传送到TCP/IP微服务514,该TCP/IP微服务514使用DPI负载和DPI时间戳信息来通知未来的负载平衡决策。如图所示,TCP/IP微服务514生成信道数据封装分组528,该信道数据封装分组528包括上下文X、TCP/IP负载Z和TCP/IP时间戳T。如图所示,TCP/IP微服务514将信道数据封装分组528传送到接口微服务508,该接口微服务508使用TCP/IP负载和TCP/IP时间戳信息来通知未来的负载平衡决策。当接口微服务508经由路径532将分组传送到安全服务504时,流程完成,该安全服务504将这些分组传送到服务器534。微服务
安全服务504的益处包括每个微服务利用相同的信道数据封装协议进行所有通信的能力,从而允许在经由信道数据封装头部可路由的整个数据中心网络上进行缩放。微服务之间的通信将在接口微服务508处生成的上下文X维持到不再能够访问原始分组的所有后续微服务。通过在经由路径526和530返回的信道数据封装分组524和528中提供负载和时间戳数据,微服务接收并且可以维持用于作出负载平衡决策的实时加载和处理等待时间信息。
图6图示应用数据流过无状态处理容错微服务环境的实施例。如图所示,安全系统600包括一个或多个接口微服务602、604和606、一个或多个TCP/IP微服务610和612、以及一个或多个DPI微服务620、622和624。一些实施例包括不同数量和/或类型的微服务。在所图示的实施例中,接口微服务602接收分组A 608,并基于分组的内容和关于分组的信息生成上下文X 660。
当分组属于特定上下文(例如,上下文X)时,TCP/IP微服务610和612两者都对这些分组执行工作。通常,这遵循具有用于状态的共享存储器的线程化模型、具有统一的中央状态储存库或正交平衡机制的进程模型,以确保相同的上下文总是由相同的微服务处理。
一些安全系统将TCP/IP安全处理实现为相同进程的线程,从而允许每个线程访问每个线程的存储器。然而,如果一个线程异常地执行,则该线程可能污染与该进程相关联的所有线程的存储器。将TCP/IP微服务610和612实现为微服务避免了这种情况,因为每个微服务具有不共享的不同存储器。
安全系统还可以将TCP/IP实现为具有单独的状态的进程并对传入分组进行散列(划分),以便确保相关分组将始终由相同的TCP/IP进程处理。这允许状态保持正交,使得两个或更多个TCP/IP进程不需要共享状态。这种方法可能遭受问题,包括差的负载平衡效率。另外,TCP/IP进程的状态可能需要被屏蔽,使得如果这些TCP/IP进程中的一个TCP/IP进程将失败,则另一个TCP/IP进程可以接管。
在本文详述的实施例中,TCP/IP微服务610和612(或其他微服务)具有外部状态结构和伴随所有经处理数据的上下文。每个TCP/IP微服务以及安全层级结构的每个级别的每个其他微服务与其他微服务隔离并且可以独立地缩放。每个微服务可以访问分组或经重组的分组数据的状态,从而允许使用全局状态服务进行实时负载平衡(参考图7描述)。在许多情况下,上下文允许微服务放弃查询服务状态(与特定微服务的层级结构级别下的处理相关联的状态),从而减少对全局状态服务的需求。
作为示例,考虑作为经由路径640从接口微服务602接收的分组的一部分由TCP/IP微服务610获得的上下文662。该上下文由接口微服务602使用先前描述的过程生成,并且作为由TCP/IP微服务610发起的任何安全服务请求的一部分被转发。在作为路径642的一部分与经重组的分组数据一起被传送到DPI微服务620时,上下文662包含可以允许DPI微服务放弃或简化该经重组的数据的处理的信息。此类信息可以包括上下文位或字段,该上下文位或字段指定仅需要将正则表达式或模式的子集用于DPI处理。如果上下文指定在开始DPI处理之前应当接收特定数量的经重组的数据字节,指定允许或禁止特定协议,并指定其他信息,则可以避免DPI状态查找。如果上下文指定没有DPI处理结果可以隔离流,例如,该流在可信范围内,则可以避免上下文状态查找。
本文公开的实施例包括无状态的微服务。微服务中的每一个从外部源检取状态,使得该微服务可以处理属于任何上下文的分组或内容。每个微服务可以检取和更新服务状态(与微服务处理相关联的状态)。另外,每个微服务可以检取和更新上下文状态(与和所有安全服务处理相关的上下文相关联的状态)。在一些实施例中,进程状态和上下文状态共享全局状态服务(参见图7)。上下文状态的元素的示例包括关于来自源IP的通信量的怀疑水平、忽略某些端口或协议以及用于处理分组的其他信息的策略、经重组的内容以及从用该上下文标识的通信中提取的对象,等等。
安全系统的不同层级结构处的多个TCP/IP微服务或微服务能够同时处理具有相同上下文的分组。如果一个安全微服务将要失败,例如,如果TCP/IP微服务未能响应请求,则这允许另一个微服务使用失败的微服务的上下文来接管。
返回到图6,上下文X 660的生成不仅可以考虑与分组A 608相关联的属性,诸如详细描述其路由信息的n元组,还可以考虑状态查找或上下文查找,以及其他信息。接口微服务602分别经由路径640或650向TCP/IP微服务610或612提供分组A 608和上下文X 660。接口微服务602可以进行负载平衡,以便选择TCIP/IP微服务中的、用于将分组A 608和上下文X 660转发到的一个TCIP/IP微服务。
TCP/IP微服务610和612是无状态的,但是受益于由接口微服务602执行的上下文X生成。无论TCP/IP微服务610或612中的哪一个接收分组A都分解该分组,以便提取与该分组相关联的数据并对该数据执行安全处理。TCP/IP重组通常由以下步骤组成:将分组与(由源和目的地IP和端口值标识的)流相关联,并使用TCP序列编号将分组置于正确的顺序,去除任何重叠或重复并标识丢失的分组或无序分组。
TCP/IP微服务610或612分别经由路径642或652将上下文以及所提取的数据和/或从安全处理得到的数据转发到DPI微服务620。DPI微服务620分解所接收的数据以提取与分组相关联的数据并执行安全处理。连同所传送的数据一起,TCP/IP微服务610或612分别将上下文X 662或664转发到DPI微服务620。在一些实施例中,上下文X 660、662、664和666基本相同。
TCP/IP微服务610是无状态的,并且受益于由接口服务602提供的上下文。上下文可以指定TCP/IP处理的参数,诸如在转发到DPI处理之前为特定协议重组的数据量以及对无序分组的容忍和特殊处理。DPI微服务620也是无状态的,并且受益于由TCP/IP微服务610或612经由路径642或652提供的上下文。DPI微服务620可以具有在处理接收到的数据之前要加载的DPI处理状态,但是可以仅基于上下文执行一些工作(诸如,调度不同的DPI模式状态表)。因此,将上下文传送到DPI微服务620提供了避免由DPI微服务进行的一些工作量的益处。
如果TCP/IP微服务610失败并且接口微服务602利用TCP/IP微服务612,则DPI微服务620仍将从路径652中的经重组的TCP内容的传送获得上下文。
尽管图6未示出第二分组,但是当接收到与相同上下文相关联的后续分组时,接口微服务602将进行负载平衡,并选择TCP/IP微服务中的用于将分组连同上下文X 660一起转发到的一个TCP/IP微服务。例如,接口微服务602选择经由路径650将第二分组转发到TCP/IP微服务612。TCP/IP微服务612执行一些安全处理,然后经由路径652将第二分组和上下文X 664传送到DPI微服务620。在执行一些安全处理之后,DPI微服务620经由路径654响应TCP/IP微服务612,并且TCP/IP微服务经由路径656响应接口微服务602。TCP/IP微服务610和DPI微服务620两者提供对于它们接收的对安全处理的请求的响应,分别如644和646。在一个实施例中,每个响应包括作为对安全处理的请求的一部分的上下文。
在一些实施例中,接口微服务将分组与已基于这些分组的内容生成的上下文一起传送到TCP/IP微服务。该传送包括对分组执行安全服务(TCP/IP重组)以便生成经重组的数据的请求。TCP/IP微服务查询所接收的上下文,以便判定是否要从状态储存库获得上下文状态、服务状态或这两者以便执行其安全服务。由TCP/IP微服务执行重组,任何修改的状态返回到状态储存库,并且经重组的数据连同上下文一起作为执行DPI处理的请求被传送到DPI微服务。
DPI微服务从执行由TCP/IP微服务传送的DPI安全服务的请求接收经重组的数据和上下文。DPI微服务查询所接收的上下文,以便判定是否必须从状态储存库获得上下文状态、服务状态或这两者以便执行其安全服务。DPI检查由DPI微服务执行,任何修改的状态返回到状态储存库,并且响应被发送到TCP/IP微服务。
通常,每个微服务接收执行服务的请求,使用上下文状态、服务状态或这两者执行所请求的服务,存储任何修改的状态,并将经处理的数据连同上下文一起传送到后续的微服务(如果有一个后续的服务器)。
图7图示使用服务状态查找的实施例。为了说明的目的,安全服务706包括接口微服务708、TCP/IP微服务710和DPI微服务712中的每一个。部署安全服务706以为应用702与服务器704之间的通信提供安全服务,并且可以部署安全服务706以为多个应用与服务器之间的通信提供那些服务。在其他实施例中,安全服务706包含不同数量的那些微服务的实例。接口微服务708、TCP/IP微服务710和DPI微服务712中的每一个通过由消息服务720、722和724组成的消息服务组而具有至由状态服务730、732和734组成的状态服务组。状态服务730、732和734中的每一个分别包括状态内容存储740、742和744。在一些实施例中,状态服务730、732和734彼此通信。在一些实施例中,尽管在状态内容存储740、742和744之一中维持特定流(应用于服务器通信路径)的状态,但是状态服务730、732和734中的任何一个都能够接受对状态的请求,并将该请求转发给在其状态内容存储中具有该状态的状态服务。在一些实施例中,状态服务730、732和734中的任何一个能够接受更新流的状态的请求,在这种情况下,所选择的状态服务更新其他状态服务以便同步状态服务730、732和734的所有副本。可以在基于配置确认该同步之前或之后发送对更新请求的确收。在一些实施例中,接口微服务708、TCP/IP微服务710和DPI微服务712中的每一个选择状态服务730、732和734中的一个来接收与状态相关的请求。在其他实施例中,接口微服务708、TCP/IP微服务710和DPI微服务712中的每一个向消息服务720、722和724中的一个发送状态相关请求,并且消息服务选择状态服务730、732和734中的的用于将请求转发到的一个状态服务。以上允许微服务直接或通过任何消息服务与任何状态服务通信,以及获取、放置、更新或初始化状态记录。
图8图示由微服务执行的方法的实施例。微服务从系统接口(网卡、虚拟网络接口或其他接口)或从另一个微服务接收服务数据804。
在806处,微服务判定所接收的数据是否是从接口微服务接收的分组数据,在该情况下,接口微服务将在808处生成上下文并返回到流程。被传输的数据类型可以是隐式的(接口微服务发送分组,TCP/IP微服务发送经重组的分组数据等)或被指定为微服务之间的通信的一部分。在一些实施例中,微服务利用指定每个经封装的传送内的内容的封装协议。
层级结构中的接口微服务之上的微服务将接收上下文作为该传送的一部分。在810处,选择状态服务,并且获得与要对在804处接收的服务数据执行的处理相对应的上下文状态和服务状态。在一些实施例中,该选择由上下文驱动或影响,诸如,基于上下文来请求优先级或更高性能的状态服务。
在812处,微服务判定是否需要查找服务状态,并且如果是,则在814处查找服务状态并返回到流程。在一个实施例中,微服务使用来自上下文、源数据或两者的组合的信息来判定是否要使用服务状态。该判定的示例包括:在DPI或SSL微服务内基于上下文的一部分或位字段判定不应发生DPI或SSL处理,除非经重组的数据至少是特定尺寸;以及在TCP/IP微服务内基于上下文的一部分或位字段判定应丢弃无序分组。在这些示例性(和其他)情况下,通常不检取服务状态。
在816处,微服务判定是否需要查找上下文状态,并且如果是,则在818处查找上下文状态并返回到流程。在一个实施例中,微服务使用来自上下文、源数据或两者的组合的信息来判定是否要使用上下文状态。该判定的示例包括:由TCP/IP服务基于上下文来判定经重组的内容包括SSL数据;以及在DPI或SSL微服务内基于上下文的一部分或位字段来判定不应发生DPI或SSL处理,除非经重组的数据至少是特定尺寸。在这些示例性(和其他)情况下,不需要检取上下文状态。
可以基于设计者的偏好、性能优化或其他原因以任何顺序进行判定812和816。
在820处,执行安全处理。在822处,微服务判定是否需要修改服务状态,并且如果是,则在824处修改服务状态并返回到流程。在一个实施例中,微服务至少部分地基于服务状态是否由于由微服务执行的处理而改变来判定是否必须修改服务状态(以改变的形式返回到状态服务)。此类判定的示例包括:由DPI服务判定用于解析服务数据的正则表达式解析器的状态已经改变;以及由TCP/IP服务判定已经接收到无序分组。
在826处,微服务判定是否要修改上下文状态,并且如果是,则在828处,微服务修改上下文状态。在一个实施例中,微服务至少部分地基于上下文状态是否由于由微服务执行的处理而改变来判定是否修改上下文状态(以改变的形式返回到状态服务)。此类判定的示例包括由DPI服务判定模式扫描的结果指示安全风险。作为这种判定的结果更新上下文状态可以使得其他微服务(响应于上下文状态的改变)改变它们的操作并且进一步减少它们花费在检取服务状态上的消耗。作为示例,要由DPI微服务隔离的通信路径(由于一些检测到的异常)可以指示(作为上下文状态的一部分)来自相同源IP(可能被感染的系统)的所有其他通信也被隔离。
在830处,将包括上下文的安全处理的结果作为以下各项被写入:向下一层级结构安全服务(作为进一步的安全服务请求)的输出、对所接收的请求的响应(诸如,关于作为DPI处理的一部分什么模式被匹配的指示)或这两者。微服务的层级结构中的较高微服务可以将上下文包括在对较低级微服务的响应中。
在无状态微服务可以严格地基于上下文作出处理决策的情况下,状态查找被避免。在无状态微服务可以严格地基于上下文和上下文状态(不是与微服务处理相关联的服务状态)作出处理决策的情况下,该服务状态查找被避免。无论层级结构级别或规模如何,微服务的任何故障转移都可以在相同的益处下操作。
图9图示在安全服务架构中的整个处理过程中的上下文和与上下文相关联的数据的实施例。所接收的分组902由接口微服务接收,并且在一些实施例中包含接口904、机器ID906、源IP地址908、目的地IP地址910、源端口912和目的地端口914中的一个或多个。接口904可以是物理接口(诸如,以太网MAC地址),虚拟接口(诸如,由管理程序提供给虚拟机的接口或者与正被处理的分组相关联的路径的其他数值或文本描述)。机器ID 906可以是能够区分NAT边界或防火墙后面的分组源的分组传送的源的描述。在这些情况下,源IP 908可以由多个分组源共享。通过查找这些字段或这些字段的子集来执行上下文生成。查找机制可以是可配置的,使得可以使用例如子网、IP地址范围或其他手段对公共网络、物理或虚拟机或连接路径进行分组,并使用相同的策略进行处理。
每个上下文包括具有状态记录922和策略记录924的上下文数据920。上下文状态记录922可以由任何微服务修改,并且可以包含与由微服务标识并且与属于上下文的分组传送相关联的安全事件有关的信息。此类数据的示例将是标识弱或弃用的加密协议、对等网络通信量或在提供安全服务的过程中所标识的其他信息的使用的标志。上下文策略记录924包含用于在微服务对安全服务的处理时指示这些微服务的信息。上下文策略是可以作为上下文字段作为微服务之间的传送的一部分传输的最小记录。还可以传送上下文数据920的其他字段。
上下文数据920还可以包括一个或多个上下文数据记录(926到928),该上下文数据记录包含与特定微服务的安全事件的处理有关的信息。上下文数据记录的示例包括由TCP/IP服务使用以便检测无序分组的计数器、来自某些网络的回音检查(ping)分组的计数器或与特定微服务相关的其他数据或状态。
通过传送包括上下文策略记录924的上下文作为微服务之间的每次传送的一部分,可以极大地减少共享状态服务上的负载,并且可以更容易地实现微服务的缩放。
在上述说明书中,已经公开了具体的示例性实施例。然而,将显而易见的是,可以对其作出各种修改和改变,而不背离如所附权利要求中阐述的本发明的更宽的精神和范围。因此,说明书和附图应被认为是说明性而非限制性意义的。
虽然本文所公开的一些实施例在硬件执行单元以及逻辑电路的上下文中涉及数据处置和分配,但是其他实施例可以通过存储在非瞬态机器可读有形介质上的数据或计算机可执行指令来实现,这些数据或指令当由机器执行时,使机器执行符合至少一个实施例的功能。在一个实施例中,在计算机可执行指令中将与本公开的实施例相关联的功能具体化。计算机可执行指令可以用来使利用指令编程的通用或专用的处理器来执行至少一个实施例的步骤。本发明的实施例可以作为计算机程序产品或软件来提供,该计算机程序产品或软件可以包括在其上存储了计算机可执行指令的机器或计算机可读介质,所述计算机可执行指令可以用于将计算机(或其他电子设备)编程为执行根据至少一个实施例的一个或多个操作。替代地,实施例的步骤可以由包含用于执行所述步骤的固定功能逻辑的特定硬件组件或者由经编程的计算机组件与固定功能硬件组件的任何组合来执行。
用于将逻辑编程为执行至少一个实施例的计算机可执行指令可以存储在系统中的存储器内,该存储器诸如DRAM、高速缓存、闪存、或其他存储装置。此外,指令可以经由网络或借助于其他计算机可读介质来分布。因此,机器可读介质可以包括用于存储或传送以机器(例如,计算机)可读的形式的信息的任何机制,但是不限于软盘、光盘、紧致盘只读存储器(CD-ROM)和磁光盘、只读存储器(ROM)、随机存取存储器(RAM)、可擦除可编程只读存储器(EPROM)、电可擦除可编程只读存储器(EEPROM)、磁卡或光卡、闪存、或用于经由电、光、声音、或其他形式的传播信号(例如,载波、红外信号、数字信号等)在互联网上传输信息的有形机器可读存储。因此,非瞬态计算机可读介质包括适用于存储或传送以机器(例如,计算机)可读形式的电子指令或信息的任何类型的有形机器可读介质。
Claims (20)
1.一种方法,包括:
由第一微服务传送分组数据和上下文,其中所述上下文与所述分组数据相关联;
由第二微服务接收所述分组数据和所述上下文,所述第二微服务用于:使用所述上下文来确定要执行什么安全处理,对所述分组数据执行安全处理,并且将所得到的数据和所述上下文传送到第三微服务;以及
由所述第三微服务接收所述所得到的数据和所述上下文,所述第三微服务用于:使用所述上下文来确定要执行什么安全处理,并对所述所得到的数据执行所述安全处理。
2.如权利要求1所述的方法,其特征在于,所述第二微服务和所述第三微服务用于使用所述上下文来执行所述安全处理。
3.如权利要求1所述的方法,其特征在于,所述第二微服务用于从所述分组数据提取数据,并对从所述分组数据提取的数据执行所述安全处理,并且其中,所述第三微服务从所述所得到的数据提取数据,并对从所述所得到的数据提取的数据执行所述安全处理。
4.如权利要求3所述的方法,其特征在于,所述第二微服务和所述第三微服务用于从所接收的数据提取更高级别的数据。
5.如权利要求1所述的方法,其特征在于,所述第二微服务用于使用服务状态和上下文状态来执行安全处理。
6.如权利要求5所述的方法,其特征在于,所述第二微服务用于从状态服务检取所述服务状态和所述上下文状态。
7.如权利要求5所述的方法,其特征在于,所述第二微服务用于使用所述上下文来执行所述安全处理,并且避免从状态服务检取所述服务状态和所述上下文状态。
8.一种系统,包括:
存储器;
处理器,所述处理器用于使用所述存储器并用于执行指令以实现第一安全微服务,所述第一安全微服务用于执行包括以下步骤的过程:
由第一微服务传送分组数据和与所述分组数据相关联的上下文;
由第二微服务接收所述分组数据和所述上下文,所述第二微服务用于:使用所述上下文来确定对所述第二微服务请求什么安全处理,对所述分组数据执行所请求的安全处理,并且将所得到的数据和所述上下文传送到第三微服务;以及
由所述第三微服务接收所述所得到的数据和所述上下文,所述第三微服务用于:使用所述上下文来确定对所述第三微服务请求什么安全处理,并对所述所得到的数据执行所请求的安全处理。
9.如权利要求8所述的系统,其特征在于,所述第二微服务用于从所述分组数据提取数据,并对从所述分组数据提取的数据执行所请求的安全处理,并且其中,所述第三微服务从所述所得到的数据提取数据,并对从所述所得到的数据提取的数据执行所请求的安全处理。
10.如权利要求9所述的系统,其特征在于,所述第二微服务和所述第三微服务用于从所接收的数据提取更高级别的数据。
11.如权利要求8所述的系统,其特征在于,所述第二微服务用于使用服务状态和上下文状态来执行安全处理。
12.如权利要求11所述的系统,其特征在于,所述第二微服务用于从状态服务检取所述服务状态和所述上下文状态。
13.如权利要求8所述的系统,其特征在于,所述第二微服务用于使用所述上下文来执行所述安全处理,并且避免从状态服务检取所述服务状态和上下文状态。
14.如权利要求11所述的系统,其特征在于,第二微服务用于使用所述上下文来执行所述安全处理,并且避免从状态服务检取所述服务状态和所述上下文状态。
15.一种非瞬态计算机可读介质,包含计算机可执行指令,所述计算机可执行指令当由处理器执行时使所述处理器执行包括以下步骤的方法:
由第一微服务传送分组数据和与所述分组数据相关联的上下文;
由第二微服务接收所述分组数据和所述上下文,所述第二微服务用于:使用所述上下文来确定对所述第二微服务请求什么安全处理,对所述分组数据执行所请求的安全处理,并且将所得到的数据和所述上下文传送到第三微服务;以及
由所述第三微服务接收所述所得到的数据和所述上下文,所述第三微服务用于:使用所述上下文来确定对所述第三微服务请求什么安全处理,并对所述所得到的数据执行所请求的安全处理。
16.如权利要求15所述的非瞬态计算机可读介质,其特征在于,所述第二微服务用于从所述分组数据提取数据,并对从所述分组数据提取的数据执行安全处理,并且其中,所述第三微服务从所述所得到的数据提取数据,并对从所述所得到的数据提取的数据执行安全处理。
17.如权利要求16所述的非瞬态计算机可读介质,其特征在于,所述第二微服务和所述第三微服务用于从所接收的数据提取更高级别的数据。
18.如权利要求15所述的非瞬态计算机可读介质,其特征在于,所述第二微服务用于使用服务状态和上下文状态来执行安全处理。
19.如权利要求15所述的非瞬态计算机可读介质,其特征在于,第二微服务用于从状态服务检取服务状态和上下文状态。
20.如权利要求15所述的非瞬态计算机可读介质,其特征在于,所述第二微服务用于使用所述上下文来执行所述安全处理,并且避免从状态服务检取服务状态和上下文状态。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/224,385 US10218730B2 (en) | 2016-07-29 | 2016-07-29 | Systems and methods of stateless processing in a fault-tolerant microservice environment |
US15/224,385 | 2016-07-29 | ||
PCT/US2017/044349 WO2018022981A1 (en) | 2016-07-29 | 2017-07-28 | Systems and methods of stateless processing in a fault-tolerant microservice environment |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109804607A true CN109804607A (zh) | 2019-05-24 |
CN109804607B CN109804607B (zh) | 2021-11-26 |
Family
ID=59558520
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201780047200.4A Active CN109804607B (zh) | 2016-07-29 | 2017-07-28 | 容错微服务环境中的无状态处理的系统和方法 |
Country Status (6)
Country | Link |
---|---|
US (2) | US10218730B2 (zh) |
EP (1) | EP3491800A1 (zh) |
JP (1) | JP2019523507A (zh) |
KR (1) | KR20190031252A (zh) |
CN (1) | CN109804607B (zh) |
WO (1) | WO2018022981A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113407326A (zh) * | 2021-06-30 | 2021-09-17 | 昆明理工大学 | 一种基于限界上下文的微服务划分方法 |
CN114342343A (zh) * | 2019-08-13 | 2022-04-12 | 华为技术有限公司 | 一种用于处理数据包的网络数据包处理器 |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10489275B2 (en) | 2016-10-20 | 2019-11-26 | Cisco Technology, Inc. | Agentless distributed monitoring of microservices through a virtual switch |
CN106533804A (zh) * | 2016-12-22 | 2017-03-22 | 成都西加云杉科技有限公司 | 一种网络运营支撑系统 |
US10484410B2 (en) * | 2017-07-19 | 2019-11-19 | Cisco Technology, Inc. | Anomaly detection for micro-service communications |
US10911493B2 (en) * | 2018-03-14 | 2021-02-02 | ShieldX Networks, Inc. | Identifying communication paths between servers for securing network communications |
US11062315B2 (en) | 2018-04-25 | 2021-07-13 | At&T Intellectual Property I, L.P. | Fraud as a service |
CN108712309B (zh) * | 2018-06-11 | 2022-03-25 | 郑州云海信息技术有限公司 | 一种微服务架构下的微服务节点防护方法和系统 |
US10853180B2 (en) * | 2018-10-09 | 2020-12-01 | EMC IP Holding Company LLC | Automatically setting a dynamic restore policy in a native cloud environment |
US10936444B2 (en) | 2018-10-26 | 2021-03-02 | EMC IP Holding Company LLC | Smart dynamic restore for Kubernetes based applications |
WO2020139509A1 (en) * | 2018-12-27 | 2020-07-02 | Apple Inc. | Integrity protection for frequent small data transmission |
US11019044B2 (en) * | 2019-03-08 | 2021-05-25 | Gigamon Inc. | Correlating network flows through a proxy device |
US11175947B2 (en) | 2019-12-03 | 2021-11-16 | International Business Machines Corporation | Microservices change management and analytics |
CN113347274A (zh) * | 2021-07-02 | 2021-09-03 | 大象慧云信息技术有限公司 | 一种微服务的数据处理系统和方法 |
EP4113939B1 (en) * | 2021-07-02 | 2024-04-03 | Tata Consultancy Services Limited | Management and orchestration of heterogeneous network environment using dynamic, robust and network aware microservices |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8498301B2 (en) * | 2010-03-31 | 2013-07-30 | Brocade Communications Systems, Inc. | Switch with packet services processing |
CN103516633A (zh) * | 2012-06-29 | 2014-01-15 | 丛林网络公司 | 用于在分布式交换机中提供服务的方法和装置 |
CN104272672A (zh) * | 2012-04-30 | 2015-01-07 | 国际商业机器公司 | 向虚拟覆盖网络流量提供服务 |
US20160006673A1 (en) * | 2014-07-03 | 2016-01-07 | Sas Institute Inc. | Resource server providing a rapidly changing resource |
CN105446478A (zh) * | 2014-09-22 | 2016-03-30 | 三星电子株式会社 | 设备及控制该设备的方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11323508B2 (en) * | 2009-05-22 | 2022-05-03 | Comcast Interactive Media, Llc | Web service system and method |
US9569224B2 (en) * | 2014-05-06 | 2017-02-14 | Oracle International Corporation | System and method for adaptively integrating a database state notification service with a distributed transactional middleware machine |
US9467476B1 (en) * | 2015-03-13 | 2016-10-11 | Varmour Networks, Inc. | Context aware microsegmentation |
-
2016
- 2016-07-29 US US15/224,385 patent/US10218730B2/en active Active
-
2017
- 2017-07-28 EP EP17749320.2A patent/EP3491800A1/en not_active Withdrawn
- 2017-07-28 WO PCT/US2017/044349 patent/WO2018022981A1/en unknown
- 2017-07-28 CN CN201780047200.4A patent/CN109804607B/zh active Active
- 2017-07-28 KR KR1020197003299A patent/KR20190031252A/ko unknown
- 2017-07-28 JP JP2019504844A patent/JP2019523507A/ja active Pending
-
2019
- 2019-02-25 US US16/284,434 patent/US10630710B2/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8498301B2 (en) * | 2010-03-31 | 2013-07-30 | Brocade Communications Systems, Inc. | Switch with packet services processing |
CN104272672A (zh) * | 2012-04-30 | 2015-01-07 | 国际商业机器公司 | 向虚拟覆盖网络流量提供服务 |
CN103516633A (zh) * | 2012-06-29 | 2014-01-15 | 丛林网络公司 | 用于在分布式交换机中提供服务的方法和装置 |
US20160006673A1 (en) * | 2014-07-03 | 2016-01-07 | Sas Institute Inc. | Resource server providing a rapidly changing resource |
CN105446478A (zh) * | 2014-09-22 | 2016-03-30 | 三星电子株式会社 | 设备及控制该设备的方法 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114342343A (zh) * | 2019-08-13 | 2022-04-12 | 华为技术有限公司 | 一种用于处理数据包的网络数据包处理器 |
CN113407326A (zh) * | 2021-06-30 | 2021-09-17 | 昆明理工大学 | 一种基于限界上下文的微服务划分方法 |
Also Published As
Publication number | Publication date |
---|---|
US10218730B2 (en) | 2019-02-26 |
EP3491800A1 (en) | 2019-06-05 |
CN109804607B (zh) | 2021-11-26 |
WO2018022981A1 (en) | 2018-02-01 |
US10630710B2 (en) | 2020-04-21 |
JP2019523507A (ja) | 2019-08-22 |
KR20190031252A (ko) | 2019-03-25 |
US20190312900A1 (en) | 2019-10-10 |
US20180034839A1 (en) | 2018-02-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109804607A (zh) | 容错微服务环境中的无状态处理的系统和方法 | |
US11477097B2 (en) | Hierarchichal sharding of flows from sensors to collectors | |
US10680946B2 (en) | Adding multi-tenant awareness to a network packet processing device on a software defined network (SDN) | |
US10581884B2 (en) | Channel data encapsulation system and method for use with client-server data channels | |
US11171969B2 (en) | Systems and methods for real-time configurable load determination | |
US11354039B2 (en) | Tenant-level sharding of disks with tenant-specific storage modules to enable policies per tenant in a distributed storage system | |
US10666617B2 (en) | Intercepting network traffic routed by virtual switches for selective security processing | |
US11082515B2 (en) | Technologies for offloading data object replication and service function chain management | |
US10320761B2 (en) | Selective encryption configuration | |
US20190273718A1 (en) | Intercepting network traffic routed by virtual switches for selective security processing | |
US10841256B2 (en) | Upgrading components of a messaging system used by a microservice-based application | |
CN109154896A (zh) | 用于服务链负载平衡的系统和方法 | |
US10198338B2 (en) | System and method of generating data center alarms for missing events | |
US10447716B2 (en) | Systems and methods for processing hypervisor-generated event data |
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 | ||
TA01 | Transfer of patent application right | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20210506 Address after: California, USA Applicant after: Anti special network Co. Address before: California, USA Applicant before: SHIELDX NETWORKS, Inc. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |