[go: up one dir, main page]

CN101305561A - 基于通信网络中的流策略的流控制 - Google Patents

基于通信网络中的流策略的流控制 Download PDF

Info

Publication number
CN101305561A
CN101305561A CNA2006800309377A CN200680030937A CN101305561A CN 101305561 A CN101305561 A CN 101305561A CN A2006800309377 A CNA2006800309377 A CN A2006800309377A CN 200680030937 A CN200680030937 A CN 200680030937A CN 101305561 A CN101305561 A CN 101305561A
Authority
CN
China
Prior art keywords
flow
policy
application
information
path
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
Application number
CNA2006800309377A
Other languages
English (en)
Other versions
CN101305561B (zh
Inventor
J·H·汤森
吉斯伯特·弗洛里斯·范比克·范利文
R·N·杜拖特
J·N·威尔约翰
D·韦尔斯
L·J·布赖茨
J·C·杜拖特
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Netronome Systems Inc
Original Assignee
Netronome Systems Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Netronome Systems Inc filed Critical Netronome Systems Inc
Publication of CN101305561A publication Critical patent/CN101305561A/zh
Application granted granted Critical
Publication of CN101305561B publication Critical patent/CN101305561B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5601Transfer mode dependent, e.g. ATM
    • H04L12/5602Bandwidth control in ATM Networks, e.g. leaky bucket
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/76Routing in software-defined topologies, e.g. routing between virtual machines
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/12Avoiding congestion; Recovering from congestion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/41Flow control; Congestion control by acting on aggregated flows or links
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/30Peripheral units, e.g. input or output ports
    • H04L49/3009Header conversion, routing tables or routing tags
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0227Filtering policies
    • H04L63/0245Filtering by information in the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/20Traffic policing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2483Traffic characterised by specific attributes, e.g. priority or QoS involving identification of individual flows
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/30Peripheral units, e.g. input or output ports
    • H04L49/3081ATM peripheral units, e.g. policing, insertion or extraction
    • H04L49/309Header conversion, routing tables or routing tags
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing or analysis of headers

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

一种用于处理第一和第二实体之间的数字电子流的系统和方法,其中确定要应用于该流的流策略,并且然后依据该策略沿路径引导该流。为每个流提供一ID,并且与每个流相关联的标签表示要应用于其相关联流的策略。流之间也相互关联,关联的流具有关联的策略。具体地,可以处理或转发流。该路径可以包括图形设备和虚拟应用。

Description

基于通信网络中的流策略的流控制
本发明涉及一种用于处理已发送信息的系统及方法。更具体而言,本发明涉及一种转发和处理在第一实体和第二实体之间的数字电子流的系统及方法。
根据本发明,提供了一种用于处理在第一实体和第二实体之间的数字电子流的系统,该系统包括:
流策略确定装置,该装置用于确定要应用于流的策略;以及
引导装置,该装置用于依据相关的流策略沿确定的路径对电子流进行引导。
该系统可以包括流标识(ID)提供和识别装置,用于为来自第一实体的每个新流初始提供一个ID,以及用于随后识别现有流的标识。
所述的流策略确定装置可以为每个流提供一个策略标签,该标签与该流的标识相关联,并且该标签指示要应用于该流的策略。
所述的流策略确定装置可以在首次收到流时确定要应用于该流的策略,并且它可以在其生存期期间改变应用到流的策略。
该系统还可以包括一个关联确定装置,用于确定第一流与第二流是否关联,以及用于向关联的流应用关联的流策略。
所述路径中可以包括至少一个处理装置。类似地,所述路径中可以包括至少一个转发装置。
所述的处理装置可以包括图形设备(graph structure)、处理器、存储器、虚拟机和/或应用。所述的应用可以是在虚拟机上以内核模式运行的应用,或者是在虚拟机上以用户模式运行的应用。
所述的转发装置可以包括图形设备、网络接口、通信接口、虚拟交换机、虚拟网络接口和/或虚拟流接口。
具体地,所述的引导装置可以沿一个路径对流进行引导,所述的路径包括柔性的图形设备。所述的图形设备可以具有子图形设备或嵌套的图形设备,所述的图形设备还可以具有处理和/或转发组件。
该系统可以包括:处理器,该处理器具有有至少一种实时处理功能的操作系统;以及应用,该应用位于该操作系统的内核或该操作系统的用户空间内,并且其中所述的引导装置将流的至少一部分沿包括该应用的路径进行引导。
形成该路径的实体可以并联、串联或其组合连接。该路径可以包括内部和/或外部组件。
所述的流策略确定装置可以响应应用。
另外,所述的流策略确定装置可以为流的转发和返回部分确定不同的流策略。
所述的流策略确定装置可以依据任何合适的标准为流确定流策略。具体地,这些标准可以是存储器使用、网络带宽使用、功率耗散、来自虚拟机中的客户端操作系统的反馈、来自应用的反馈、来自处理装置的反馈以及来自转发装置的反馈。它们还可以是分组头内的字段、分组有效负载内的数据以及协议和协议组。
类似地,所述的关联确定装置可以依据合适的标准对流进行关联,例如来自特定类型应用的流、使用特定协议的流、在相关协议体系的特定层、通信的特定部分中的特定模式使用子协议的流、与通信实体的特定组关联的流、来自包含路径的流以及来自特定链接、网络和网络接口的流。
另外,根据本发明,提供了一种处理在第一实体和第二实体之间的数字电子流的方法,该方法包括:
确定将应用在流上的策略;以及
依据相关流策略沿确定的路径引导该流。
可以为来自第一实体的每个新流初始提供标识,随后识别现有流的标识。
该方法可以包括为每个流提供一个策略标签,并且将该标签与该流的标识相关联,该标签指示将应用于该流的策略。
如上所述,所述路径中可以包括至少一个处理装置和/或一个转发装置。
当首次接收到流时,可以确定将应用于流的流策略,并且可以在其生存期期间改变该流策略。
该方法还可以包括确定第一流与第二流是否关联,并且向关联的流应用关联的流策略。
可以沿一个路径引导流,其中所述的路径包括柔性的图形设备、包括位于具有至少一种实时处理功能的操作系统的内核或用户空间内的应用、包括并联和/或串联连接的多个实体或包括内部和/或外部组件。
可以响应于应用来确定流策略,并且流策略对于流的转发或返回部分可以不同。
第一和第二实体可以是网络或通信设备、网络连接设备(例如桥接器、路由器或交换机)、网络节点、计算机、应用、任务、进程、服务、用户或者其他软件或硬件系统。
系统可以以强制网络传输信息(traffic)或其他已发送信息横穿(traverse)系统的方式连接到网络或其他通信系统。已发送信息还可以根据已被适当构建或设计的已发送信息而起源于、终止于或横穿系统,例如通过使用适当的地址(例如二层网络地址)被寻址到该系统的信息。因此,所述的系统可以是路由器、交换机、“线路中的块(BITW)”桥接器、“自学习”多端口桥接器、继电器、代理或网关。
此外,所述的系统可以包括一个或多个处理器或协处理器。如果系统具有多个处理器或协处理器,那么这些处理器可以使用下列中的一个或多个相互连接:
●物理共享存储器;
●使用远程直接存储器访问(RDMA)机制实现的虚拟共享存储器;
●类似HyperTransport、PCI或PCT Express的总线;
●类似千兆以太网(Gigabit Ethernet),高级交换互连(ASI)或无限带宽(Infiniband)(数据报或定向流)的任何其他网络或其他通信链接。
所述的系统可以使用网络或通信接口连接到通信网络或其他远程通信系统。连接的网络可以是远程通信系统或通信网络,其中已发送信息所属的聚集(aggregate)被明确地识别为已发送信息的一部分,或者其中所述的聚集可以从与已发送信息或传输介质相关联的参数推出。所述的关联装置可以使用该聚集识别信息的等同性或相关性来将已发送信息与其他已发送信息关联。该聚集识别信息可以识别流、信道、电路、管道、会话、通量、时隙、频率、展布频谱代码、标签交换路径或已发送信息的波长。
所述的通信网络可以将已发送数据分割为离散的数据报。这些数据报可以是IP分组、ATM信元、以太网帧,或可以使用在任何介质上运载的任何其他协议。所述的关联装置可以使用包含在数据报内的信息(头信息和有效负载信息),以及通过检查网络/通信传输信息随时间保持的信息,以将已发送信息与其他已发送信息关联。
已发送信息的格式或解释可以由协议层的体系来定义。所述的关联装置可以检查在这些层中的一个或多个的协议,以确定其他已发送信息与哪个已发送信息相关联(如果有)。
例如,已发送信息可以是使用网际协议(IP)和/或以太网协议(IEEE 802.x)的网络传输信息。所述的关联装置可以检查IP和/或以太网头和网络分组的有效载荷以及嵌入这些协议中的任何协议的头或网络分组,以确定其它已发送信息与哪个已发送信息相关联(如果有)。
已发送信息可以包含识别已发送信息的源(即发射机或启动器)和目的地(即接收器或目标)的识别信息。此识别信息可以包含网际协议地址、MAC层地址、数字、文本、二进位或其它格式的网络节点标识。此识别信息也可以包含指定是已发送信息的源或目的地的用户、应用、组件、进程、任务、子系统或网络节点内的其它实体的标识。此识别信息可以指明上述源或目的地的组或其它聚集体。该识别信息也可以指定已发送信息使用的协议或子协议(这些协议可以定义其它识别信息的格式、范围和/或命名空间)。该关联装置可以利用任何上述识别信息以及上述识别信息的组合,以将已发送信息与其它已发送信息相关联。
已发送信息本身可以直接或间接地参考相关联的已发送信息。关联装置可以检测、提取、解码、解译和利用这些参考,以将已发送信息和参考的其它已发送信息相关联。
例如,已发送信息可以是信令或控制协议,例如SIP/H.323/FTP/RSVP/CR-LDP等,它们可以参考相关联的数据传输信息会话/流/路径/传输信息。
关联装置也可以根据定义的捆绑策略关联已发送信息。捆绑策略可以分组:
通过特定类型的应用发送的已发送信息或在相应协议体系的指定层使用指定协议或子协议的已发送信息;
包含特定的任意模式的已发送信息,其中每个模式可以在传输信息的特定部分进行查找,例如,较高层(连接层/会话层/应用层)数据流内的数据报头、数据报有效载荷等;
与特定通信实体组(例如用户、服务器、设备、网络、应用实例、服务或其组合)相关联的已发送信息;
包含在包含流中的已发送信息,例如在信道、虚拟电路、虚拟路径、标签交换路径、虚拟专用网络、干线等中;
通过指定链路或网络发送的、或在指定网络接口接入装置的信息;
上述的任何组合,嵌套至任意深度。
流策略确定装置将已发送信息进行分类,以便将已发送信息分组到不同类别中。它可以根照各种标准将已发送信息进行分类:
根据分组头中的字段、分组有效荷载(内容)以及为正被分类的流保持的状态和整个装置的状态执行分类。
分类装置可以通过使用内置协议知识或另外安装的协议支持模块对跨越(span)分组边界的协议或分层在其它协议上的协议进行译码。是否检测到特定协议或协议组可以用作分类标准。
分类装置可以从所支持的协议层提取数据并且将数据对照任意模式(包括正则表达式、范围、地址、子字符串和字符串/数值等式的最长前缀匹配和大于/小于匹配)进行匹配。
分类装置支持使用布尔逻辑和算术表达式以将分类子结果并入总结果。
所述的系统也可以决定如何处理传输。这可以使用关联装置的结果和流策略确定装置的结果进行,以确定应用到已发送信息的处理策略。此策略指定需要进一步处理/检查传输信息的组件组(在任意图形中串联、并联或互联)和用于这些组件中的每个组件的附加处理参数(例如传输信息调度程序应用的服务质量参数,或虚拟专用网络模块应疏导(en-tunnel)传输信息的信道的细节等)。
处理装置可以产生、引起、终止、存储、检查、修改、复制、过滤、封装、拆封和/或其它处理已发送信息。对已发送信息的特定项、或捆绑或类别执行的处理由配置的处理策略确定,或如果没有配置的策略应用则由缺省内置策略确定。
处理装置可以模块化,即它可以作为互联模块组或组件组实现。模块化处理装置中的组件可以为:
网络和通信接口,其将装置链接到外部通信网络或传输介质;
关联识别组件和分类组件,其检测已发送信息和其它已发送信息之间的关联,并且确定要向已发送信息应用的策略;
动作图(action graph),其包含互连在任意图形中的一个或多个传输信息处理模块,其中传输信息处理模块是任何这些组件的实例或是基本的处理模块;
虚拟交换机,其链接任何数量的(通常多于两个)这些组件,而执行实际的交换机将执行的处理,例如以太网地址的自学习和信息的多广播/广播;
虚拟线,其链接这些组件中的两个;
虚拟机,其仿真单处理机或多处理机计算机系统,并且运行(可能修改)标准操作系统(例如Linux、Microsoft Windows、Unix-like操作系统和实时操作系统等);
虚拟网络接口卡,其对运行于虚拟机中的操作系统/应用看起来是网络接口卡(例如对虚拟机中的网络堆栈),但其连接这些组件而非连接到实际硬件;
虚拟流接口,其使得应用能够以流而非以分组接收数据——例如仿真诸如Socket Direct Protocol等的面向流的协议的虚拟字符设备/虚拟文件系统/设备;
虚拟共享存储器机制,其仿真诸如远程直接存储器访问系统的基于通信的共享存储器;
虚拟机中以内核模式或用户模式运行的标准(未修改的)应用。
虚拟机中以内核模式或用户模式运行的应用已经被开发用于与系统提供的应用程序接口(API)相互作用。
这些组件相互连接以在系统中形成最高层次(最抽象层次)数据流图。数据流图的嵌入(较低层次图)通过动作图机制来支持。
这些组件可以任意映射到(如配置或装载)一组已经互连成集群(cluster)的处理器或协处理器(专用固定功能硬件)。例子:网络接口和一些捆绑(即信息关联)/分类/动作图模块可以装载在一个处理器上(可以是诸如网络处理器的专用处理器),然而其它组件可以装载在其它处理器上(可以是通用计算处理器)。装载组件的处理器可以使用共享存储器(统一的或非统一的)、总线/底板(backplane)或任何形式的支持消息/分组/数据报/信息流传递范例的通信链路来互相连接。
主机装置使得组件能够共存于包括系统的处理器上。它也提供使得组件能够互相交互以及与系统的其它部分交互的通信机制。
主机装置并入向组件分配资源(存储器、专用CPU或CPU时间片、协处理器、盘空间、网络带宽等)的操作系统。此基础操作系统可以是实时或非实时操作系统,可选地具有支持在基础操作系统上运行的虚拟机的能力。
主机装置能够使用各种内部和外部通信机制和介质链接其装载的组件,这些机制包括共享存储器通信机制、消息传递通信机制和混合机制。
共享存储器通信机制通过发送方将待通信的信息放入接收方可访问的共享内存区域内而操作。此区域可以是物理存储器设备组,并且通信双方都可以物理访问这些存储器设备组,例如,这可以应用于各方是在对称多处理(SMP)系统中运行在相同处理器或不同处理器上的应用。在这种情况下,虚拟存储器(如果可应用)可以需要被配置成明确允许共享存储器段/页。替代地,此区域可以使用可能为双端口或多端口的专用共享存储器硬件来实现。在任一种情况下,做为可选的优化,发送处理器可以命令接收处理器的高速缓冲存储器将其高速缓冲存储器“预加载”通信信息或其子集(例如数据报头,但非数据报的有效荷载)。在处理器共享高速缓冲存储器或在通信各方运行在单个处理器上的情况下,可以没有这种要求。此系统可以支持多个分离共享存储池。目的是将相同安全等级的应用配置为使用单个存储池,例如操作属于特定协议组的传输信息的应用可以与处理其它协议的应用相隔离,或作用于与特定用户/客户相关的传输信息的应用可以与作用于代表另一用户/客户的应用相隔离。隔离共享存储池要求使用其它通信机制中的一个,以在池间传送信息,即需要在池之间拷贝数据。装置的管理员的义务是定义存储器共享策略,该策略在所希望安全策略和所希望性能之间达到适当折衷。
作为完全共享存储器的替代,虚拟存储器系统可以用于重新映射页,以在双方之间转换所有权或可访问权。在此情况下,相比共享存储器选项,则可以消耗附加的存储器,因为页可以大于将被通信的数据项,并且重新映射页将发生处理开销(overhead),然而,安全性将被改善,因为可以特别管理能够访问(读取或写入)特定数据项的一方/各方。
远程直接存储器访问机制可以用于实现虚拟共享存储器,而无需物理共享存储器。在此情况下,可以使用接收方通知发送方可以将消息传送至哪个存储器位置(实质同步自由列表信息)的机制。
主机装置也可以使用消息传递系统支持链接组件。消息传递系统能够利用各种物理介质,例如面向分组的网络介质、总线/底板、面向流/电路信道的介质等。它在每个链路上建立一个或多个消息传递队列。如有需要,消息由可访问多种类型传输介质的组件在传输介质间转换。队列可以以优先级级别排列,其中一个或多个队列与每个优先级级别关联。在此情况下,其中需要在其他消息之前传输/接收的消息,系统可以将该消息放入优先级高于其他消息所列队列优先级的队列中。
系统能够通过可靠传输或通过非可靠传输进行操作(其中传输丢失的概率不等于零)。在其中底层传输不可靠的情况下,系统使用肯定和/或否定确认并重试,以确保传递必须传递的消息。某些消息无需进行传递——这些消息被消息传递系统丢弃,如有必要的话(例如,如果资源不足以传输/传递/接收/处理消息)。
主机装置还可使用下列机制的组合:-例如,系统可将一个或多个信息结构放入共享存储器中,然后通过已传递消息/中断/任务间或线程间信号等通知接收者信息已存入共享存储器中可随时读取。系统可以包括优化功能,以当系统知道接收者将“轮询(poll)”共享存储区时抑制这些消息,并发送消息唤醒其中接收者可以处于睡眠状态的接收者(例如,如果消息暂时尚未发送至接收者)。
引导装置可将信息转发至一组组件、应用、子系统、通信/网络接口和/或外部系统。信息必须转发至的实体组以及这些实体以哪种顺序接收信息(即哪个实体先接收信息,然后将信息输入至哪个实体等)由流策略进行支配。此策略可以按每个捆绑和每个分类类别进行定义,具有指定一组应用于所有而不是的捆绑/分类的传输信息的策略的选项。系统中可嵌入一组默认流策略。
可通过API将信息转发至应用。此方法可用于已被设计为与这些API交互的应用,不论其是在基础操作系统(例如,实时操作系统/管理程序)中运行还是在虚拟机中运行。信息还可通过虚拟网络接口卡或虚拟流接口转发至虚拟机。在此情况下,只要应用能够装载在虚拟机中,标准商业成品应用可以接收信息。外部服务器或其他外部节点将如实际网络传输信息/其他通信传输接收信息。
流策略还可以指定仅一个子集捆绑(即,通常为流)应引导至特定组件。组件通常将需要接收从该流起始到该流中间的某个地方的流分段——然而,有些组件可以支持接收流的任意部分(将流“并入”中流(mid-stream)中)。
流策略可以依赖于未明确与正被处理的捆绑/流关联(或在一些情况下,不与任何捆绑/流关联)的系统中的状态变量。因而,系统可以基于那些处理器的当前负载选择将某捆绑/流引导至在系统内不同的处理器上运行的虚拟机等同组中的一个——实际上在处理器之间负载平衡传输信息;系统可以选择修改通过系统的路径,例如,在一星期的某一天/几天的某个时间忽略某个组件,或如果系统负载超过某个阈值,则忽略已标记“可选”的操作(例如,过滤未经请求的商业电子邮件,又称“垃圾邮件”)(而继续执行已标记“临界”的操作,例如传输信息防火墙/病毒过滤);系统可以基于邻近由策略指定的数据流图中的其它组件选择处理来自一组等同组件的数据的组件。因而,如果传输信息在连接于处理器1的网络接口处进入系统,则与位于系统中其他位置处的其它等同组件相比,可以优选装载在处理器1上的软件组件或直接连接于处理器1的硬件组件,然而,如果将信息传送至系统中的处理器2上的成本超过在更适合的处理器2上装载特定组件(因为处理器2具备可自由支配的更高的处理能力/更大的存储器/专用硬件等),则系统可选择使用处理器2装载特定组件,即使该组件的等同实例亦可在处理器1上获得。将系统配置为不自动进行置换的模式,其中每个组件的类型和实例均被特定配置,亦可用。因此,不论是自动确定或是手工配置,系统均可通过使用其他处理器/转发和处理硬件从某些处理器“直传”传输信息或“卸载”传输信息。
流策略还可依赖于外部设备/组件/系统的状态或到这些实体的接口的状态。举例来说:系统可以基于其负载在各种外部服务器中负载平衡,或基于与传输信息发射机的网络地址相关联的地理位置选择合适的传输信息目的地,或基于一组网络链路的已利用率确定将使用的网络链路。
系统行为可随时间如下改变:
分类装置可以在接收更多的已发送信时息时连续改进其中放置已发送信息的分类(例如,传输信息可分类为TCP传输信息,然后是在TCP之上的HTTP的传输信息,然后则是在TCP之上的HTTP中的网络会议)。
关联装置可以修改关联信息,即,与已发送信息相关联的捆绑。
分类类别与捆绑信息已改变的事实可以导致实施不同的流策略,因为其他流策略可以链接至最新确定的类别/捆绑。
外部系统或内部组件可以改变关联(即捆绑)、分类和流策略,并且也可以改变如何将组件互连倒数据流图以及如何配置组件。
现在参照随附示意图以示例的方式描述该发明,其示意显示了依据本发明的连接至客户端、服务器和应用的系统,其中:
图1示意显示了一种其中在单个操作系统的用户空间中存在单个应用的布置;
图2示意显示了一种其中存在多个应用的布置,一个在用户空间中,另一个在内核空间中,这两个应用均在单个操作系统中;
图3示意显示了存在三个应用的布置,其中一个使用库和应用程序编程接口(API)连接于系统上,而另外二个则使用虚拟网络接口卡(VNIC)连接于系统上,这三个应用均装载在单个操作系统中;
图4示意显示了一种其中在三个分离的操作系统实例中运行应用的布置,每一个应用装载在分离的虚拟机(VM)中;以及
图5示意显示了流识别与分类子系统的子组件,而子系统是前述图表的一部分。
现在参照图1,一般由参考标号10指定一种依据本发明的用于处理数字电子流的系统。系统10包括装置12,该装置连接在客户端14和服务器16.1和16.2之间。在此示例中,装置12以(通过在例如层2的特定层上寻址)引导或(通过物理连通性拓扑)强制网络传输信息或其他通信横穿装置12的方式连接至网络或其他远程通信系统,即该装置是网关、路由器、交换机、“线路内的块”桥接器或类似的附属设备。
装置12的硬件包括专用处理器子系统18.1和通用处理器子系统18.2。处理器子系统18.1和18.2使用通信机制(未显示)互相连接,该通信机制能够支持在子系统之间互相交换消息或提供由使两个子系统能够通信的两个处理器子系统共享的存储区。
专用处理器系统18.1包括网络接口硬件20.1和20.2以及一组专用于识别、分类和处理网络传输信息的处理器和协同处理器。流识别与分类子系统22.1和22.2、动作图子系统24和虚拟交换机(VX)子系统26均装载在此组处理器和协同处理器上。
客户端14连接至网络接口20.1。此网络接口连接至流ID与分类子系统22.1,而流ID与分类子系统22.1连接至虚拟交换机26。网络接口20.1还连接至动作图24,而动作图24又连接至虚拟交换机26。
服务器16.1和16.2连接至网络接口2 0.2。此网络接口连接至流ID与分类子系统22.2,而流ID与分类子系统22.2连接至虚拟交换机26。
通用处理器系统18.2包括在一个或多个处理器设备中的一个或多个处理器核。这些核与设备互相连接,以形成多处理器系统。多处理器装载有具有其内核模式软件环境30及其用户模式软件环境32的通用操作系统。内核模式软件环境中设置有虚拟网络接口卡(VNIC)32.1和32.2。用户模式软件环境中装载有应用36。应用36直接或通过内核30间接连接至VNIC 32.1和32.2。VNIC 32.1和32.2连接至虚拟交换机26。
在使用时,客户端14与服务器16.1和服务器16.2(几乎同时或在不同时间)建立通信会话,例如其可以建立TCP会话(然而,可以支持任何介质上的任何网络协议/通信会话)。
由客户端14发送的信息(在此示例中,封装在数据报/分组中)通过网络接口20.1进入该装置。
流识别和分类组件22.1确定流正在被建立,并识别与其接收的每个数据报相关联的流。以该方式,流中的数据报被捆绑在一起(彼此关联)。
流识别和分类组件22.1还能检查和分析分组头、分组内容和流内容;检测和解码协议(包括内嵌协议);以及从流提取信息。分类过程受控于由系统和/或系统上运行的应用提供的策略规范信息。该策略规范信息可以采用规则组或匹配表达组的形式,这两种形式都指定标准以及如果满足标准则应用的策略。
流识别和分类组件22.1包括在任意图形设备中互连的多个子模块。该子模块实现了分类进程的各特定方面,例如一个子模块能够检测和解码特定的协议,而另一个子模块能够执行特定的匹配运算。子模块使用适合进行处理任务的协处理器,例如加密协处理器可以被用于解码信息以获取流内容,或正则表达式分析协处理器可以被用于协助匹配过程。
流分类的结果是需要应用于流的策略(或其他非流发送信息)。在本示例中,策略已经规定匹配从客户端14到服务器16.1的指定标准的流应通过虚拟网络接口卡(VNIC)32.1被路由到应用36。
对于应用36和操作系统内核30,VNIC 32.1和VNIC 32.2显示为标准网络接口(即设备驱动器)。该应用被配置为从VNIC 32.1和VNIC 32.2获取网络传输信息,不论是作为原始网络分组还是通过嵌入内核30的协议栈。该应用不知道网络接口是虚拟的而非真实的网络接口,类似地也不知道到传输信息在到达网络接口之前已被处理。应用36分析流中的传输信息,并确定流应继续。在处理传输信息之后,例如修改分组头或流内容,应用36通过VNIC 32.2发送传输信息。因为数据已经通过与标准网络接口兼容的VNIC,所以由流识别和分类系统确定的元数据已经丢失,例如链接至将被应用于流的策略的标签以及表示流分类结果的信息。因此,需要将传输信息转发至第二流识别和分类子系统22.2,以使流标识符和流策略被确定。在本示例中,策略规定无需向传输信息应用进一步的动作,并且只需要通过网络接口20.2发送传输信息。然后服务器16.1接收该传输信息。
服务器16.1处理其已经接收的信息,并返回修改的信息或其它信息(例如客户端所请求的信息)。该服务器发送的信息被称为返回传输信息或流的返回部分。在本示例中,通过网络接口20.2接收该返回传输信息,因此流识别和分类子系统22.2再次识别所接收的传输信息所属的流,并确定将要应用于流的策略。在这种情况下,策略表明要将传输信息转发至VNIC 32.2,因此应用36执行任何所需的处理,并将传输信息(可能已修改)发送至VNIC 32.1,由此传输信息被虚拟交换机26接收,并被发送至动作图24。
注意,在此示例中,所有通过VNIC 32.1发送的传输信息都是去往客户端14的,并由动作图24以相同的方式处理。应用于此传输信息的策略既不依赖于传输信息所属的流,也不依赖于传输信息或流内容。因此,因为该传输信息无需被流识别和分类子系统处理,所以它被直接路由到动作图24。该示例说明系统能够确定在某些情况下不需要的功能,并因此优化流在系统内的路由。
动作图24包括连接在任意图中的动作模块。在本示例中,动作图可以包括:传输信息监控模块,其保存关于通过系统的字节和分组的统计;防火墙模块,其用于过滤出传输信息的子集;以及传输信息管理模块,其用于限制传输信息的带宽。
注意,流中传输信息的不同方向(即转发送和返回传输信息)无需沿同一条路径穿过系统,并可以由子系统和模块沿该路径以不同方式处理。在本示例中,返回传输信息通过动作图,而转发传输信息不这样。还注意,在流的生存期内可以通过系统继续分类传输信息而相应地重定义策略或通过管理员或应用在流的生存期内修改策略来调整流处理策略。这可以导致路径被修改或路径中的子系统所使用的参数被修改。
图1中显示了位于客户端14和服务器16.2之间的第二流。该流由客户端14发起,并且由流识别和分类块22.1分析和分类。在本实例中,系统确定应用16无需接收流中包含的传输信息,可能是因为该应用正在执行安全性功能,而且客户端和服务器是受信的。系统通过动作图表24将流路由到网络接口20.2。系统“切入”该流,这意味着流的所有处理都在系统18.1内完成,并且流从不通过处理器18.2路由,因此既不被操作系统30处理,也不被应用36处理。
图2显示了操作中的系统的另一个例子。系统12由处理系统18.1和18.2组成。处理系统18.2正在运行操作系统的单个实例,所述操作系统诸如是具有操作系统内核30和操作系统用户空间40的Linux。该操作系统正在支持两个第三方应用,例如用户空间内运行的入侵检测应用44以及操作系统内核中运行的监控应用34。客户端14建立与服务器16.1的会话。流通过网络接口20.1连接到系统,并被传递到流识别和分类模块22.1。初始分类产生一个策略,该策略确定流在被动作图24处理后应该在网络接口20.2被发送出去。该初始策略还表明应产生并发送该流的副本至允许在操作系统内核中运行的应用34接收该流的VNIC 32。注意,应用34是一个“只读”应用,因为其并不希望在流前往服务器16.1时修改该流。随着更多的流信息被流ID和分类模块22.1分析,最终分类变得可能。在这一点,确定应用44需要接收该流,并可以希望修改该流。在该示例中,通过实现应用程序编程接口(API)42的库而不是使用VNIC将该流传递至应用44。应用44的开发者已经明确地使用由实现API 42的库提供的接口。在所示示例中,在将传输信息转发至服务器16.1并将副本继续转发至应用34之前,流中包含的传输信息被发送至应用44,并且系统等待被应用44返回的传输信息。显然,其它选项也是可能的,这依赖于所配置的策略,以及接收数据的应用和子系统是否修改数据,诸如产生数据的几个副本并将数据转发至并联的几个应用和子系统。
在一段时间以后,应用44可以确定流不再具有威胁,并且其不需要察看流中的剩余传输信息。在这点上,应用44可以向系统表明,其不再希望继续接收该流。系统将停止向应用44发送该流,而仍然向服务器16.1转发电子流并将副本发送至应用34。这种“退还”流的能力释放了应用44中的资源,并提高了性能。
图2还显示了与流关联的系统处理的例子。在此示例中,第二流发生在客户端14和服务器16.2之间。该流被流识别和分类系统22.1确定为提供将要发生的未来流的预先通知的流。一个例子可以是携带诸如SIP的信令协议()的流,该指的是携带数字化语音的关联介质流。在从流收集与可以建立的任何未来流相关的信息时,系统将该流分类,并将其路由至服务器16.2。在第二流仍然活动时或在其已经结束之后,第三流从服务器16.2返回至客户端14。该第三流被流识别和分类功能22.2处理,并被认可为已经对其确定策略的关联流(基于从第二流收集的信息)。这样的第三流的例子可以是与第二流中包含的信令传输信息关联的媒体流。
图3显示了需要被一个以上应用处理的系统处理流的例子。该图也示出了使用VNIC来允许同一平台上合并多个应用。
在此示例中,流发生于客户端14和服务器16.1之间。流识别和分类系统22.1确定该流中的传输信息需要被应用44处理。流策略指定应用44已经被开发为使用由系统提供的API,并且指定去往应用44的传输信息需要通过组件42被路由到该应用,组件42构成实现系统API的库。流策略还指定在被应用42处理之后,该流应该被路由至应用46以作进一步的处理,并且指定应用46和VNIC 32.1相连。由于应用44正在使用系统API,所以用于该流的流策略可以被保持为和电子流内容一起保存的元数据,因此无需对已经被应用44处理过的传输信息执行流识别和分类。然而,一旦传输信息已经被应用46处理,应用46输出的数据就需要通过流识别和分类子系统22.2。之所以这样要求是因为传输信息通过不像流策略一样对保持元数据作出规定的VNIC。一旦流识别和分类子系统22.2已经识别流,并确定流策略,系统就依据该流策略通过网络接口20.2将该流的传输信息发送至服务器16.1。
在此示例中,第二流存在于客户端14和服务器16.1之间。用于该第二流的流策略规定该流需要横穿与VNIC 32.1相连的应用46。注意,应用46正在处理被直接路由到其的第二流以及通过应用44路由到其的第一流。应用46不知道任何在其接收流之前发生的流处理,例如在第一流的情况下,应用46不知道其已经被应用44处理过,它只接收潜在被更改或过滤过的流内容。
本示例中的第三流发生于客户端14和服务器16.2之间。其由流识别和分类子系统22.1分类,并被确定为要求使用不同于第一和第二流所使用的内部虚拟网络将其路由至应用48。该第三流通过虚拟交换机26.1被路由,而其它流通过虚拟交换机26.2路由。使用VNIC 32.2将该第三流路由至应用48。这种对系统内的分离的VNIC和虚拟交换机的使用在第三流和其它流之间提供了比存在于第一和第二流之间更大的隔离度。它还为系统提供了优化性能的机会。
图4显示了系统12的例子,该系统提供虚拟机60.1、60.2和60.3来分别支持客户机操作系统内核30.1、30.2和30.3,操作系统用户空间40.1、40.2和40.3以及应用在这些操作系统内以内核或用户模式运行。该系统可以支持可变数目的虚拟机,每个虚拟机都有能力装载不同类型或版本的客户机操作系统,和/或同一类型或版本的客户机操作系统的不同配置的实例。每个客户机操作系统都可以装载相同的应用或装载不同的应用。
在本示例中,流发生在客户端14和服务器16.1之间。该流由网络接口20.1接收,因此它由流识别和分类子系统22.1分类,并被确定为要求由运行于虚拟机(VM)60.1中的应用44处理。应用44能够通过系统API实现库42接收内容。注意,系统可以将流内容直接传递至运行于用户空间40.1中的应用,无需由客户机操作系统内核30.1进行转发或处理,用户空间40.1在运行于虚拟机60.1中的客户机操作系统中。
在本示例中,配置的流处理策略规定,应用44处理的所有传输信息还需要由虚拟机60.2中的应用46处理,并且传输信息需要通过VNIC 32.1被传递至应用46。一旦经过应用46处理,流通过VNIC 32.1退出虚拟机60.2,并被虚拟交换机26.2转发至流识别和分类子系统22.2,该子系统确定随后要应用的流策略。该流策略规定流应在均通过网络接口20.2发送至服务器16.1或16.2之前被发送至动作图24.1以进行处理。在此示例中,动作图24.1执行负载平衡功能,以选择应接收该流的服务器。
第二流存在于客户端14.2和服务器16.1之间。第二流中的传输信息通过网络接口20.1进入系统,此后其被流识别和分类子系统22.1处理。配置的流策略规定该流应被应用46处理,应用46运行在VM 60.2中并且与VNIC 32.1相连。在退出VNIC 32.1后,虚拟交换机26.2把传输信息转发到流识别和分类子系统22.2。该子系统对传输信息重新分类,并且确定应将其通过网络接口20.2发送至服务器16.2。注意,第一流和第二流均退出VNIC 32.1,但是依赖于流识别和分类子系统32.1返回的结果而不同地对其进行处理。
第三流存在于客户端14.2和服务器16.1之间。该流中的传输信息被网络接口20.1接收,并由流识别和分类子系统22.1进行处理。所配置的流策略规定该流需要被与VNIC 32.2相连的应用50处理。应用50运行于虚拟机60.3中的客户机操作系统内核30.3中。因此,属于该流的传输信息被路由至VNIC 32.2。应用50将流内容传递至运行在虚拟机60.3内的用户空间中的应用48。由应用48返回的传输信息被应用50接收,应用50通过VNIC 32.3向前发送传输信息,之后其被流识别和分类子系统22.3处理。这确定流策略要求路由传输信息在通过网络接口16.2被传递至服务器16.1之前通过动作图24.2。注意,通过系统的任意复杂路径都是可能的,这可以包括每个虚拟机的多个VNIC和内核模式以及用户模式应用。还注意,属于流的传输信息通常通过一个VINC进入虚拟机,而通过另一个VINC退出该虚拟机。此外注意,在适当的地方,流识别和分类子系统合作,以确保当其经过该系统时流策略被正确和一致地应用于该流。例如,流识别和分类子系统22.1可以通过控制信道(未在图上显示)将要应用于第三流的策略通信至流识别和分类子系统22.3。
现在参照图5,图5图示了流识别和分类子系统22的子组件以及该子系统的示例使用演示。在该示例中,传输信息从网络接口20输入到子系统22,并退出该子系统至虚拟交换机26。
在该子系统内,传输信息首先由流识别组件70接收。该组件用于通过在流状态表72中执行一次或多次查找来识别该传输信息所属的流。该表使传输信息中出现的流识别信息、包含在分组头中的类似信息以及分组的内容中出现的信息与流标识相互关联。例如,该组件能够确定具有相同IP地址和TCP端口的传输信息属于相同的流。在一些情况下,还需要参考分组内容,例如,应用层(即第七层)信息可以用于区分共享相同基本IP头信息的流。该组件具有足够的智能并且保留足够的应用层协议的状态,以使得它可以提取流识别信息。
当接收到流的第一个传输信息元素时,该流被称为新流,并且由组件70分配新的流标识。对于之后接收的传输信息元素,组件70将检索之前分配的流标识。
此外,组件70能够在嵌入单个外部流内的多个流之间识别和区分,如可能在信道传输信息的情况下所发生的。在嵌入流的情况下,通过包含流的标识和被包含流的标识的结合来识别嵌入流。
此外,组件70能够识别与特定流相关联的流。在此示例中,通过流状态表72和分离关联流表74的结合将一个流与一些流链接起来,然而,表72和表74可以组合起来。
在流包含其他流的情况下,被包含的流使用同胞(sibling)关系与同一包含流中的所有流关联。使用父子关系将包含流和被包含流关联。
关联流的其他类型也可以被系统理解,例如,可以关联已经被特定用户初始化的所有流,或可以将信号传输信息与该信号传输信息控制的媒体流关联,或可以关联特定主机或子网之间的传输信息。流间的多个关联级别以及多个关联关系被同时支持。
在组件70分配流标识或者检索该流标识之后,它将所接收的传输信息和流标识转发至流分类和策略确定组件78。该组件首先从流状态表72中检索表示要应用于该流的策略的标签。替代地,组件70将标签和流标识一起转发至组件78。
如果标签表示该流的策略已经完全确定,则流策略确定组件78如策略所定义将流和指定要应用于该流的策略的信息一起转发至适当的子系统。在该示例中,流被转发至虚拟交换机26。
然而,最初标签可以表示还没有完全确定策略。因此,流策略确定组件78将对传输信息进行分类,以便确定策略。该分类过程包括以无状态或有状态的方式提取、解码、和解释流内容,继续将从流内容中提取/确定的流内容或信息与在策略数据库76中规定的规则和描述进行匹配。如果规则匹配或者描述返回策略更新,则更新与该流相关联的策略,该更新被反映在与该流相关联的标签的变化中或者与标签相关联的策略的变化中。如此,,在流的整个存在期期间,不断地改进策略。
策略数据库76还可以参考与正被分类的流相关联的流里存在的或者从其取得的信息。因此,流策略确定组件78能够参考相关联的流表74,和属于相关联流的流状态表72中的条目,以便获取规则参考的信息。例如,策略数据库可以指定相关联的信号流参考用户名为“JSmith”的媒体流需要使用服务质量等级三被转发,而其他媒体流接收服务质量等级四。
存在于策略数据库76、流状态表72和相关联的流表74中的信息也可以被系统内的其他组件动态地更改。流识别和分类子系统的不同实例可以相互通信,以确保流策略适当和一致地应用于整个系统。应用还可能调用API,API利用能够对预期未来发生的流预配置流策略的信息,预先组装流状态表72或者相关联的流表74。应用可以通过调用API动态地改变要应用于流的策略。这些改变将导致流状态表72和/或相关联的流表74被更新。应用或者系统管理器可以随时修改策略数据库76的内容。
应当理解,流策略确定组件78需要能够检测和解码各种协议,以便能够确定需要应用参考这些协议的出现的策略,还是参考使用这些协议发送的传输信息内包含的元素的策略。因此,组件78包含子组件,每个子组件负责检测和解码特定的协议或者协议组。由于协议经常分层在其他协议上,所以子组件需要相互作用。这些子组件还用于协助特定的匹配操作。这些子组件在协处理器可用的地方支持协处理器以加速操作,例如,处理压缩协议的子组件可以使用解压缩协处理器,而执行模式匹配的子组件可以使用正则表达式匹配硬件。
应当预期本发明可以用于下列潜在应用的说明性实例的列表。该列表并不意在穷尽列举。
将在多个真实机(计算机)上运行的应用软件合并到单个虚拟机上。
设备合并使得能够用更少数量的装配有虚拟技术的设备代替多个设备。在本上下文中,设备是计算设备,可能具有专用外围设备/接口,比如网络接口;可能具有其他专用硬件,比如协处理器;与由设备的供应商或者与设备供应商相关联的供应商提供的软件相结合,其中设备已经被设计用来执行少量功能中的一个功能。设备的例子包括防火墙、侵入检测/预防设备、杀毒设备和反垃圾邮件的设备等等。
使现有的虚拟机系统能够处理和引导(即控制网络传输信息的处理/转发)网络通信。
装配一种新型的网络基础应用,该基础应用将类似处理的传统服务器与传输信息和流引导/操控等相结合。

Claims (42)

1.一种用于处理第一和第二实体之间的数字电子流的系统,其包括:
流策略确定装置,该装置用于确定将应用于该流的策略;以及
引导装置,该装置用于依据相关流策略沿确定的路径引导该流。
2.根据权利要求1所述的系统,其包括流ID提供和识别装置,用于为来自第一实体的每个新流初始提供ID,以及用于随后识别现有流的ID。
3.根据权利要求2所述的系统,其中流策略确定装置为每个流提供一策略标签,该标签与该流的ID相关联,并且该标签表示要向该流应用的策略。
4.根据权利要求1所述的系统,其包括可以包括在路径中的至少一个处理装置。
5.根据权利要求1所述的系统,其包括可以包括在路径中的至少一个转发装置。
6.根据权利要求3所述的系统,其中所述的流策略确定装置在其生存期期间改变应用于流的策略。
7.根据权利要求1所述的系统,其包括关联确定装置,用于确定第一流与第二流是否关联,并且用于向关联的流应用关联的流策略。
8.根据权利要求1所述的系统,其中所述的流策略确定装置在首次接收流时确定要应用于流的策略。
9.根据权利要求4所述的系统,其中所述的处理装置包括选自图形设备、处理器、存储器、虚拟机和应用中的至少一个组件。
10.根据权利要求9所述的系统,其中所述的应用是在虚拟机中以内核模式运行的应用,或在虚拟机中以用户模式运行的应用。
11.根据权利要求5所述的系统,其中所述的转发装置包括选自图形设备、网络接口、通信接口、虚拟交换机、虚拟网络接口和虚拟流接口中的至少一个组件。
12.根据权利要求1所述的系统,其中所述的引导装置沿包括柔性的图形设备的路径引导流。
13.根据权利要求1所述的系统,其包括具有有至少一个实时处理功能的操作系统的处理器,以及装载在操作系统的内核中或操作系统的用户空间中的应用,并且其中,所述的引导装置沿包括该应用的路径引导至少一部分流。
14.根据权利要求1所述的系统,其中所述的引导装置沿包括多个选自处理装置和转发装置的实体的路径引导流,其中所述实体通过并联、串联或其任意组合的方式连接。
15.根据权利要求1所述的系统,其中所述的引导装置沿包括内部和/或外部组件的路径引导流。
16.根据权利要求6所述的系统,其中所述的流策略确定装置响应于应用。
17.根据权利要求1所述的系统,其中所述的流策略确定装置为流的转发和返回部分确定不同的流策略。
18.根据权利要求1所述的系统,其中所述的流策略确定装置依据选自下列组的标准为流确定流策略:存储器使用、网络带宽使用、功率消耗、来自虚拟机中客户端操作系统的反馈、来自应用的反馈、来自处理装置的反馈以及来自转发装置的反馈。
19.根据权利要求1所述的系统,其中所述的流策略确定装置依据选自下列组的标准为流确定流策略:分组头内的字段、分组有效负载内的数据以及协议和协议组。
20.根据权利要求7所述的系统,其中所述的关联确定装置依据选自下列组的标准对流进行关联:来自特定类型应用的流、使用特定协议的流、在相关协议体系的特定层使用子协议的流、传输信息特定部分中的特定模式、与通信实体的特定组关联的流、来自包含路径的流以及来自特定链接、网络和网络接口的流。
21.根据权利要求12所述的系统,其中所述的图形设备包括选自下列的任意组合:处理装置、转发装置和子图形设备。
22.一种处理第一实体和第二实体之间的数字电子流的方法,该方法包括:
确定要应用于流的策略;以及
依据相关流策略沿确定的路径引导流。
23.根据权利要求22所述的方法,其包括为来自第一实体的每个新流初始提供ID,以及用于随后识别现有流的ID。
24.根据权利要求23所述的方法,其包括为每个流提供策略标签,将该标签与该流的ID相关联,并且该标签表示要应用于该流的策略。
25.根据权利要求22所述的方法,其包括在路径中包括至少一个处理装置。
26.根据权利要求22所述的方法,其包括在路径中包括至少一个转发装置。
27.根据权利要求24所述的方法,其中要应用于流的流策略在其生存期期间被改变。
28.根据权利要求22所述的方法,其包括确定第一流与第二流是否关联,以及向关联的流应用关联的流策略。
29.根据权利要求22所述的方法,其中在首次接收流时,确定要应用于流的策略。
30.根据权利要求25所述的方法,其中所述的处理装置包括选自图形设备、处理器、存储器、虚拟机和应用的至少一个组件。
31.根据权利要求30所述的方法,其中所述的应用是在虚拟机上以内核模式运行的应用,或在虚拟机上以用户模式运行的应用。
32.根据权利要求26所述的方法,其中所述的转发装置包括选自图形设备、网络接口、通信接口、虚拟交换机、虚拟网络接口和虚拟流接口中的至少一个组件。
33.根据权利要求22所述的方法,其中沿包括柔性的图形设备的路径引导流。
34.根据权利要求22所述的方法,其中沿包括装载在具有至少一个实时处理功能的操作系统的内核中或用户空间中的应用的路径引导至少一部分流。
35.根据权利要求22所述的方法,其中沿包括多个选自处理装置和转发装置的实体的路径引导流,其中所述的实体以并联、串联或其组合的方式连接。
36.根据权利要求22所述的方法,其中沿包括内部和/或外部组件的路径引导流。
37.根据权利要求27所述的方法,其中响应于应用确定流策略。
38.根据权利要求1所述的方法,其中所述的流策略对于流的转发和返回部分不同。
39.根据权利要求22所述的方法,其中依据选自下列组的标准为流确定流策略:存储器使用、网络带宽使用、功率消耗、来自虚拟机中客户端操作系统的反馈、来自应用的反馈、来自处理装置的反馈以及来自转发装置的反馈。
40.根据权利要求22所述的方法,其中依据选自下列组的标准为流确定流策略:分组头内的字段、分组有效负载内的数据以及协议和协议组。
41.根据权利要求28所述的方法,其中依据选自下列组的标准对流进行关联:来自特定类型应用的流、使用特定协议的流、在相关协议体系的特定层使用子协议的流、传输信息特定部分中的特定模式、与通信实体的特定组关联的流、来自包含路径的流以及来自特定链接、网络和网络接口的流。
42.根据权利要求33所述的方法,其中所述的图形设备由选自下列组的任意组合组成:处理装置、转发装置和子图形设备。
CN2006800309377A 2005-08-23 2006-08-23 基于通信网络中的流策略的流控制 Expired - Fee Related CN101305561B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
GBGB0517304.2A GB0517304D0 (en) 2005-08-23 2005-08-23 A system and method for processing and forwarding transmitted information
GB0517304.2 2005-08-23
PCT/IB2006/052933 WO2007023467A2 (en) 2005-08-23 2006-08-23 Flow control based on flow policies in a communication network

Publications (2)

Publication Number Publication Date
CN101305561A true CN101305561A (zh) 2008-11-12
CN101305561B CN101305561B (zh) 2011-08-03

Family

ID=35198316

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2006800309377A Expired - Fee Related CN101305561B (zh) 2005-08-23 2006-08-23 基于通信网络中的流策略的流控制

Country Status (6)

Country Link
US (4) US20090204723A1 (zh)
EP (1) EP1917765B1 (zh)
JP (1) JP2009506618A (zh)
CN (1) CN101305561B (zh)
GB (2) GB0517304D0 (zh)
WO (1) WO2007023467A2 (zh)

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101465770B (zh) * 2009-01-06 2011-04-06 北京航空航天大学 入侵检测系统部署方法
CN102084340A (zh) * 2009-04-28 2011-06-01 思科技术公司 用于虚拟机的流量转发
CN102648455A (zh) * 2009-12-04 2012-08-22 日本电气株式会社 服务器和流控制程序
CN102917045A (zh) * 2012-10-17 2013-02-06 苏州阔地网络科技有限公司 一种处理离线会议的方法及系统
CN103546451A (zh) * 2012-07-16 2014-01-29 国际商业机器公司 基于流的覆盖网络
CN103577406A (zh) * 2012-07-19 2014-02-12 深圳中兴网信科技有限公司 一种管理非结构化数据的方法及装置
WO2014101133A1 (zh) * 2012-12-28 2014-07-03 华为技术有限公司 分流方法、设备和系统
CN104601467A (zh) * 2014-12-31 2015-05-06 华为技术有限公司 一种发送报文的方法和装置
CN105721300A (zh) * 2014-12-23 2016-06-29 英特尔公司 用于网络设备流查找管理的技术
CN106063200A (zh) * 2013-12-09 2016-10-26 华为技术有限公司 一种用于内容缓存的装置、方法
CN109309634A (zh) * 2018-09-25 2019-02-05 新华三技术有限公司 一种报文处理系统及网络设备
CN113934660A (zh) * 2015-12-22 2022-01-14 英特尔公司 加速网络分组处理
US12040976B2 (en) 2015-08-26 2024-07-16 Barefoot Networks, Inc Packet header field extraction
US12088504B2 (en) 2017-07-23 2024-09-10 Barefoot Networks, Inc. Using stateful traffic management data to perform packet processing
US12119991B2 (en) 2014-12-27 2024-10-15 Intel Corporation Programmable protocol parser for NIC classification and queue assignments
US12255835B2 (en) 2017-01-31 2025-03-18 Barefoot Networks, Inc. Messaging between remote controller and forwarding element

Families Citing this family (91)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB0517304D0 (en) * 2005-08-23 2005-10-05 Netronome Systems Inc A system and method for processing and forwarding transmitted information
US9119633B2 (en) 2006-06-28 2015-09-01 Kardium Inc. Apparatus and method for intra-cardiac mapping and ablation
WO2008100536A1 (en) * 2007-02-12 2008-08-21 Mushroom Networks Inc. Access line bonding and splitting methods and appartus
CN101110766B (zh) * 2007-03-23 2010-04-21 华为技术有限公司 一种信令ip流承载事件上报的控制方法和功能实体
PL2194737T3 (pl) 2007-09-27 2018-11-30 Sun Patent Trust Węzeł sieci i terminal mobilny
JP5205075B2 (ja) * 2008-02-13 2013-06-05 パナソニック株式会社 暗号処理方法、暗号処理装置、復号処理方法および復号処理装置
US7826359B2 (en) * 2008-03-24 2010-11-02 Oracle America, Inc. Method and system for load balancing using queued packet information
US8346225B2 (en) 2009-01-28 2013-01-01 Headwater Partners I, Llc Quality of service for device assisted services
US8406748B2 (en) 2009-01-28 2013-03-26 Headwater Partners I Llc Adaptive ambient services
US8832777B2 (en) 2009-03-02 2014-09-09 Headwater Partners I Llc Adapting network policies based on device service processor configuration
US8402111B2 (en) 2009-01-28 2013-03-19 Headwater Partners I, Llc Device assisted services install
US8589541B2 (en) 2009-01-28 2013-11-19 Headwater Partners I Llc Device-assisted services for protecting network capacity
US8275830B2 (en) 2009-01-28 2012-09-25 Headwater Partners I Llc Device assisted CDR creation, aggregation, mediation and billing
US8548428B2 (en) 2009-01-28 2013-10-01 Headwater Partners I Llc Device group partitions and settlement platform
US20100192170A1 (en) 2009-01-28 2010-07-29 Gregory G. Raleigh Device assisted service profile management with user preference, adaptive policy, network neutrality, and user privacy
US8391834B2 (en) 2009-01-28 2013-03-05 Headwater Partners I Llc Security techniques for device assisted services
US8289867B2 (en) 2008-08-01 2012-10-16 Qualcomm Atheros, Inc. Message routing mechanism for communication networks
US9609510B2 (en) 2009-01-28 2017-03-28 Headwater Research Llc Automated credential porting for mobile devices
US10248996B2 (en) 2009-01-28 2019-04-02 Headwater Research Llc Method for operating a wireless end-user device mobile payment agent
US11985155B2 (en) 2009-01-28 2024-05-14 Headwater Research Llc Communications device with secure data path processing agents
US11973804B2 (en) 2009-01-28 2024-04-30 Headwater Research Llc Network service plan design
US9572019B2 (en) 2009-01-28 2017-02-14 Headwater Partners LLC Service selection set published to device agent with on-device service selection
US10237757B2 (en) 2009-01-28 2019-03-19 Headwater Research Llc System and method for wireless network offloading
US9270559B2 (en) 2009-01-28 2016-02-23 Headwater Partners I Llc Service policy implementation for an end-user device having a control application or a proxy agent for routing an application traffic flow
US10798252B2 (en) 2009-01-28 2020-10-06 Headwater Research Llc System and method for providing user notifications
US10200541B2 (en) * 2009-01-28 2019-02-05 Headwater Research Llc Wireless end-user device with divided user space/kernel space traffic policy system
US10841839B2 (en) 2009-01-28 2020-11-17 Headwater Research Llc Security, fraud detection, and fraud mitigation in device-assisted services systems
US10783581B2 (en) 2009-01-28 2020-09-22 Headwater Research Llc Wireless end-user device providing ambient or sponsored services
US9392462B2 (en) 2009-01-28 2016-07-12 Headwater Partners I Llc Mobile end-user device with agent limiting wireless data communication for specified background applications based on a stored policy
US9706061B2 (en) 2009-01-28 2017-07-11 Headwater Partners I Llc Service design center for device assisted services
US11218854B2 (en) 2009-01-28 2022-01-04 Headwater Research Llc Service plan design, user interfaces, application programming interfaces, and device management
US10492102B2 (en) 2009-01-28 2019-11-26 Headwater Research Llc Intermediate networking devices
US9955332B2 (en) 2009-01-28 2018-04-24 Headwater Research Llc Method for child wireless device activation to subscriber account of a master wireless device
US10715342B2 (en) 2009-01-28 2020-07-14 Headwater Research Llc Managing service user discovery and service launch object placement on a device
US10326800B2 (en) 2009-01-28 2019-06-18 Headwater Research Llc Wireless network service interfaces
US10064055B2 (en) 2009-01-28 2018-08-28 Headwater Research Llc Security, fraud detection, and fraud mitigation in device-assisted services systems
US10484858B2 (en) 2009-01-28 2019-11-19 Headwater Research Llc Enhanced roaming services and converged carrier networks with device assisted services and a proxy
US9954975B2 (en) 2009-01-28 2018-04-24 Headwater Research Llc Enhanced curfew and protection associated with a device group
US12166596B2 (en) 2009-01-28 2024-12-10 Disney Enterprises, Inc. Device-assisted services for protecting network capacity
US10264138B2 (en) 2009-01-28 2019-04-16 Headwater Research Llc Mobile device and service management
US9565707B2 (en) 2009-01-28 2017-02-07 Headwater Partners I Llc Wireless end-user device with wireless data attribution to multiple personas
US10779177B2 (en) 2009-01-28 2020-09-15 Headwater Research Llc Device group partitions and settlement platform
US9980146B2 (en) 2009-01-28 2018-05-22 Headwater Research Llc Communications device with secure data path processing agents
US8051167B2 (en) * 2009-02-13 2011-11-01 Alcatel Lucent Optimized mirror for content identification
US8555265B2 (en) * 2010-05-04 2013-10-08 Google Inc. Parallel processing of data
US8813071B2 (en) * 2011-01-31 2014-08-19 Symantec Corporation Storage reclamation systems and methods
US9292329B2 (en) * 2011-02-10 2016-03-22 Microsoft Technology Licensing, Llc Virtual switch interceptor
JP5839032B2 (ja) * 2011-02-24 2016-01-06 日本電気株式会社 ネットワークシステム、コントローラ、及びフロー制御方法
US9450873B2 (en) * 2011-06-28 2016-09-20 Microsoft Technology Licensing, Llc Performance isolation for clouds
CN105208670B (zh) 2011-09-16 2019-01-18 华为技术有限公司 一种回收逆向授予中传输机会控制权的方法及装置
US10516607B2 (en) 2012-04-12 2019-12-24 Telefonaktiebolaget Lm Ericsson (Publ) Layer 3 service implementation in cloud servers and method
US10031782B2 (en) 2012-06-26 2018-07-24 Juniper Networks, Inc. Distributed processing of network device tasks
TWI470550B (zh) * 2012-06-26 2015-01-21 Wistron Corp 虛擬機器的通信方法以及伺服端系統
US20140006632A1 (en) * 2012-07-02 2014-01-02 Cisco Technology, Inc. Multiplexer Load Balancer for Session Initiation Protocol Traffic
CN102916824A (zh) * 2012-10-17 2013-02-06 苏州阔地网络科技有限公司 一种实现离线会议的方法及系统
CN102946354B (zh) * 2012-11-15 2016-11-23 华为技术有限公司 一种报文转发的方法、装置及网络设备
US8955155B1 (en) 2013-03-12 2015-02-10 Amazon Technologies, Inc. Secure information flow
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
US9621642B2 (en) 2013-06-17 2017-04-11 Telefonaktiebolaget Lm Ericsson (Publ) Methods of forwarding data packets using transient tables and related load balancers
EP3014471A1 (en) * 2013-06-24 2016-05-04 Hewlett Packard Enterprise Development LP Processing a data flow graph of a hybrid flow
US9118571B2 (en) * 2013-07-08 2015-08-25 Telefonaktiebolaget L M Ericsson (Publ) Methods of operating load balancing switches and controllers using matching patterns with unrestricted characters
US20150071298A1 (en) * 2013-09-09 2015-03-12 Microsoft Corporation Hybrid Forwarding in a Virtual Switch
US10367827B2 (en) * 2013-12-19 2019-07-30 Splunk Inc. Using network locations obtained from multiple threat lists to evaluate network data or machine data
CN103763403B (zh) * 2013-12-30 2017-03-15 华为技术有限公司 报文流量控制方法及相关装置和计算节点
US9921867B2 (en) * 2013-12-30 2018-03-20 Huawei Technologies Co., Ltd. Negotiation between virtual machine and host to determine executor of packet flow control policy with reduced address space
JP6069236B2 (ja) * 2014-02-25 2017-02-01 日本電信電話株式会社 アプリケーション識別システムの転送削減方法、アプリケーション識別装置およびアプリケーション識別プログラム
JP6181577B2 (ja) * 2014-02-25 2017-08-16 日本電信電話株式会社 ポリシー制御システム、および、ポリシー制御プログラム
US9485183B2 (en) 2014-04-25 2016-11-01 Telefonaktiebolaget Lm Ericsson (Publ) System and method for efectuating packet distribution among servers in a network
CN105227462B (zh) * 2014-06-11 2018-06-29 上海诺基亚贝尔股份有限公司 一种用于更新OpenFlow流表的方法与设备
US9456030B2 (en) * 2014-09-15 2016-09-27 Telefonaktiebolaget Lm Ericsson (Publ) Methods of operating load balancing switches and controllers using modified flow entries
CN105530179B (zh) * 2014-09-29 2019-01-22 新华三技术有限公司 数据报文处理方法以及网络设备
US9537801B1 (en) * 2015-01-31 2017-01-03 Netronome Systems, Inc. Distributed packet ordering system having separate worker and output processors
US10846117B1 (en) * 2015-12-10 2020-11-24 Fireeye, Inc. Technique for establishing secure communication between host and guest processes of a virtualization architecture
US10447728B1 (en) 2015-12-10 2019-10-15 Fireeye, Inc. Technique for protecting guest processes using a layered virtualization architecture
US10108446B1 (en) 2015-12-11 2018-10-23 Fireeye, Inc. Late load technique for deploying a virtualization layer underneath a running operating system
US20180212885A1 (en) * 2017-01-20 2018-07-26 Google Inc. Device and method for scalable traffic shaping at a receiver with a time-indexed data structure
US10454835B2 (en) 2017-01-20 2019-10-22 Google Llc Device and method for scalable traffic shaping with a time-indexed data structure
US20180324061A1 (en) * 2017-05-03 2018-11-08 Extrahop Networks, Inc. Detecting network flow states for network traffic analysis
US11429410B2 (en) * 2017-05-09 2022-08-30 Vmware, Inc. Tag based firewall implementation in software defined networks
US11258714B1 (en) * 2018-09-28 2022-02-22 Google Llc Fine grain traffic shaping offload for a network interface card
EP4059205A1 (en) * 2019-11-11 2022-09-21 Telefonaktiebolaget LM Ericsson (publ) Technique for dynamically classifying and re-classifying a data packet flow
US11165823B2 (en) 2019-12-17 2021-11-02 Extrahop Networks, Inc. Automated preemptive polymorphic deception
US11539796B2 (en) * 2020-07-08 2022-12-27 Bank Of America Corporation System for intelligent sensor data transfer and device manipulation leveraging quantum optimization engine
US11784933B2 (en) 2020-12-08 2023-10-10 Google Llc Traffic shaping offload on a network interface controller
US11463314B2 (en) 2020-12-16 2022-10-04 Oracle International Corporation Automatically inferring software-defined network policies from the observed workload in a computing environment
US11102076B1 (en) 2021-02-04 2021-08-24 Oracle International Corporation Techniques for network policies analysis in container frameworks
US11444837B1 (en) 2021-02-26 2022-09-13 Oracle International Corporation Techniques for verifying network policies in container frameworks
US12066973B2 (en) * 2021-06-04 2024-08-20 Microsoft Technology Licensing, Llc Userspace networking with remote direct memory access
US11349861B1 (en) 2021-06-18 2022-05-31 Extrahop Networks, Inc. Identifying network entities based on beaconing activity
US11296967B1 (en) 2021-09-23 2022-04-05 Extrahop Networks, Inc. Combining passive network analysis and active probing
US11843606B2 (en) 2022-03-30 2023-12-12 Extrahop Networks, Inc. Detecting abnormal data access based on data similarity

Family Cites Families (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6006264A (en) * 1997-08-01 1999-12-21 Arrowpoint Communications, Inc. Method and system for directing a flow between a client and a server
JPH11163947A (ja) * 1997-09-22 1999-06-18 Toshiba Corp ゲートウェイ装置、無線端末装置、ルータ装置および通信ネットワークのゲートウェイ制御方法
FI114132B (fi) * 1998-01-28 2004-08-13 Nokia Corp Tiedonsiirron laatutason tukeminen langattomassa tiedonsiirrossa
US6154776A (en) * 1998-03-20 2000-11-28 Sun Microsystems, Inc. Quality of service allocation on a network
US6625150B1 (en) * 1998-12-17 2003-09-23 Watchguard Technologies, Inc. Policy engine architecture
US6542508B1 (en) * 1998-12-17 2003-04-01 Watchguard Technologies, Inc. Policy engine using stream classifier and policy binding database to associate data packet with appropriate action processor for processing without involvement of a host processor
US6636480B1 (en) * 1999-09-08 2003-10-21 Riverstone Networks, Inc. Method and system for controlling data flow through a multiport switch
US6636838B1 (en) * 2000-02-23 2003-10-21 Sun Microsystems, Inc. Content screening with end-to-end encryption
US7305487B2 (en) * 2001-02-24 2007-12-04 International Business Machines Corporation Optimized scalable network switch
US7099350B2 (en) * 2001-04-24 2006-08-29 Atitania, Ltd. Method and apparatus for converting data between two dissimilar systems
DE60206168T2 (de) * 2001-06-15 2006-06-22 British Telecommunications Public Ltd. Co. Kommunikationsnetzwerk mit stau-verhinderung
US7133365B2 (en) 2001-11-02 2006-11-07 Internap Network Services Corporation System and method to provide routing control of information over networks
JP3885573B2 (ja) * 2001-12-04 2007-02-21 株式会社日立製作所 パケット処理方法および装置
US20030110379A1 (en) * 2001-12-07 2003-06-12 Tatu Ylonen Application gateway system, and method for maintaining security in a packet-switched information network
US7650634B2 (en) * 2002-02-08 2010-01-19 Juniper Networks, Inc. Intelligent integrated network security device
JP2004252852A (ja) 2003-02-21 2004-09-09 Matsushita Electric Ind Co Ltd 情報処理装置及び情報処理方法
US20050015599A1 (en) 2003-06-25 2005-01-20 Nokia, Inc. Two-phase hash value matching technique in message protection systems
US20050114700A1 (en) * 2003-08-13 2005-05-26 Sensory Networks, Inc. Integrated circuit apparatus and method for high throughput signature based network applications
US20050102414A1 (en) * 2003-09-16 2005-05-12 Shailesh Mehra Systems and methods to support quality of service in communications networks
US7685436B2 (en) * 2003-10-02 2010-03-23 Itt Manufacturing Enterprises, Inc. System and method for a secure I/O interface
EP1557982B1 (en) * 2004-01-26 2011-05-11 STMicroelectronics Srl Method and system for admission control in communication networks
US20060070066A1 (en) * 2004-09-30 2006-03-30 Grobman Steven L Enabling platform network stack control in a virtualization platform
US7719966B2 (en) * 2005-04-13 2010-05-18 Zeugma Systems Inc. Network element architecture for deep packet inspection
US7287114B2 (en) * 2005-05-10 2007-10-23 Intel Corporation Simulating multiple virtual channels in switched fabric networks
US7639613B1 (en) * 2005-06-24 2009-12-29 Packeteer, Inc. Adaptive, flow-based network traffic measurement and monitoring system
US7624436B2 (en) * 2005-06-30 2009-11-24 Intel Corporation Multi-pattern packet content inspection mechanisms employing tagged values
CN1905517A (zh) * 2005-07-30 2007-01-31 华为技术有限公司 在ngn网络中为媒体流选择转发路径的控制系统及方法
GB0517304D0 (en) 2005-08-23 2005-10-05 Netronome Systems Inc A system and method for processing and forwarding transmitted information

Cited By (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101465770B (zh) * 2009-01-06 2011-04-06 北京航空航天大学 入侵检测系统部署方法
CN102084340A (zh) * 2009-04-28 2011-06-01 思科技术公司 用于虚拟机的流量转发
CN102084340B (zh) * 2009-04-28 2014-10-22 思科技术公司 用于虚拟机的流量转发
CN102648455A (zh) * 2009-12-04 2012-08-22 日本电气株式会社 服务器和流控制程序
US9130867B2 (en) 2009-12-04 2015-09-08 Nec Corporation Flow control for virtualization-based server
CN102648455B (zh) * 2009-12-04 2015-11-25 日本电气株式会社 服务器和流控制程序
CN103546451B (zh) * 2012-07-16 2017-08-29 国际商业机器公司 用于管理覆盖网络中的流量的系统和方法
CN103546451A (zh) * 2012-07-16 2014-01-29 国际商业机器公司 基于流的覆盖网络
US10158563B2 (en) 2012-07-16 2018-12-18 International Business Machines Corporation Flow based overlay network
CN103577406A (zh) * 2012-07-19 2014-02-12 深圳中兴网信科技有限公司 一种管理非结构化数据的方法及装置
CN102917045A (zh) * 2012-10-17 2013-02-06 苏州阔地网络科技有限公司 一种处理离线会议的方法及系统
US9807642B2 (en) 2012-12-28 2017-10-31 Huawei Technologies Co., Ltd. Traffic distribution method, device, and system
WO2014101133A1 (zh) * 2012-12-28 2014-07-03 华为技术有限公司 分流方法、设备和系统
CN106063200B (zh) * 2013-12-09 2019-11-01 华为技术有限公司 一种用于内容缓存的装置、方法
CN106063200A (zh) * 2013-12-09 2016-10-26 华为技术有限公司 一种用于内容缓存的装置、方法
US10284470B2 (en) 2014-12-23 2019-05-07 Intel Corporation Technologies for network device flow lookup management
CN105721300A (zh) * 2014-12-23 2016-06-29 英特尔公司 用于网络设备流查找管理的技术
CN105721300B (zh) * 2014-12-23 2019-04-30 英特尔公司 用于网络设备流查找管理的方法及设备
US12119991B2 (en) 2014-12-27 2024-10-15 Intel Corporation Programmable protocol parser for NIC classification and queue assignments
CN104601467B (zh) * 2014-12-31 2018-03-13 华为技术有限公司 一种发送报文的方法和装置
CN104601467A (zh) * 2014-12-31 2015-05-06 华为技术有限公司 一种发送报文的方法和装置
US12040976B2 (en) 2015-08-26 2024-07-16 Barefoot Networks, Inc Packet header field extraction
CN113934660B (zh) * 2015-12-22 2024-06-11 英特尔公司 加速网络分组处理
CN113934660A (zh) * 2015-12-22 2022-01-14 英特尔公司 加速网络分组处理
US12095882B2 (en) 2015-12-22 2024-09-17 Intel Corporation Accelerated network packet processing
US12255835B2 (en) 2017-01-31 2025-03-18 Barefoot Networks, Inc. Messaging between remote controller and forwarding element
US12088504B2 (en) 2017-07-23 2024-09-10 Barefoot Networks, Inc. Using stateful traffic management data to perform packet processing
CN109309634A (zh) * 2018-09-25 2019-02-05 新华三技术有限公司 一种报文处理系统及网络设备

Also Published As

Publication number Publication date
GB0517304D0 (en) 2005-10-05
US10680951B2 (en) 2020-06-09
GB0802510D0 (en) 2008-03-19
US10044619B1 (en) 2018-08-07
US20120093160A1 (en) 2012-04-19
US20090204723A1 (en) 2009-08-13
EP1917765B1 (en) 2012-08-08
GB2445116A (en) 2008-06-25
GB2445116B (en) 2010-06-02
WO2007023467A2 (en) 2007-03-01
WO2007023467A3 (en) 2007-08-09
US8929374B2 (en) 2015-01-06
JP2009506618A (ja) 2009-02-12
EP1917765A2 (en) 2008-05-07
US20180219779A1 (en) 2018-08-02
CN101305561B (zh) 2011-08-03

Similar Documents

Publication Publication Date Title
CN101305561B (zh) 基于通信网络中的流策略的流控制
CN109547580B (zh) 一种处理数据报文的方法和装置
CN107925677B (zh) 用于卸载数据对象复制以及服务功能链管理的方法及交换机
US7684423B2 (en) System and method for virtual network interface cards based on internet protocol addresses
US9729441B2 (en) Service function bundling for service function chains
US6831893B1 (en) Apparatus and method for wire-speed classification and pre-processing of data packets in a full duplex network
US9559948B2 (en) System and method for managing unknown flows in a flow-based switching device
US8621020B2 (en) Method and apparatus for selective E-mail processing
US8649395B2 (en) Protocol stack using shared memory
US7742474B2 (en) Virtual network interface cards with VLAN functionality
US7764678B2 (en) Routing based on dynamic classification rules
US11848981B2 (en) Secure multi-directional data pipeline for data distribution systems
CN108886496A (zh) 多路径虚拟交换
US11595303B2 (en) Packet handling in software-defined net working (SDN) environments
US7613132B2 (en) Method and system for controlling virtual machine bandwidth
US20080298392A1 (en) Packet processing
US20130294231A1 (en) Method of high-speed switching for network virtualization and high-speed virtual switch architecture
US9716688B1 (en) VPN for containers and virtual machines in local area networks
Miguel-Alonso A research review of OpenFlow for datacenter networking
US10541842B2 (en) Methods and apparatus for enhancing virtual switch capabilities in a direct-access configured network interface card
US9473396B1 (en) System for steering data packets in communication network
US8050266B2 (en) Low impact network debugging
US8116199B2 (en) Method and system for monitoring network communication

Legal Events

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

Granted publication date: 20110803

Termination date: 20130823