CN102055667B - 用于实现网络规则的方法和设备 - Google Patents

用于实现网络规则的方法和设备 Download PDF

Info

Publication number
CN102055667B
CN102055667B CN201010284384.6A CN201010284384A CN102055667B CN 102055667 B CN102055667 B CN 102055667B CN 201010284384 A CN201010284384 A CN 201010284384A CN 102055667 B CN102055667 B CN 102055667B
Authority
CN
China
Prior art keywords
virtual network
packet
switch module
network switch
module
Prior art date
Application number
CN201010284384.6A
Other languages
English (en)
Other versions
CN102055667A (zh
Inventor
G·艾贝
P·辛德胡
A·文卡特马尼
Original Assignee
瞻博网络公司
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
Priority to US12/612,210 priority Critical
Priority to US12/612,210 priority patent/US8442048B2/en
Application filed by 瞻博网络公司 filed Critical 瞻博网络公司
Publication of CN102055667A publication Critical patent/CN102055667A/zh
Application granted granted Critical
Publication of CN102055667B publication Critical patent/CN102055667B/zh

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance or administration or management of packet switching networks
    • H04L41/08Configuration management of network or network elements
    • H04L41/0803Configuration setting of network or network elements
    • H04L41/0813Changing of configuration
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance or administration or management of packet switching networks
    • H04L41/08Configuration management of network or network elements
    • H04L41/0803Configuration setting of network or network elements
    • H04L41/0806Configuration setting of network or network elements for initial configuration or provisioning
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing packet switching networks
    • H04L43/08Monitoring based on specific metrics
    • H04L43/0805Availability
    • H04L43/0817Availability functioning
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/30Special provisions for routing multiclass traffic
    • H04L45/306Route determination based on the nature of the carried application
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic regulation in packet switching networks
    • H04L47/10Flow control or congestion control
    • H04L47/12Congestion avoidance or recovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/35Application specific switches
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/65Fast packet switch re-configuration
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/70Virtual switches
    • 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/0263Rule management

Abstract

在一个实施例中,一种方法包括在通信网络的控制平面内,向虚拟网络交换机模块发送配置信号。配置信号被配置成在虚拟网络交换机模块定义第一网络规则。所述方法还包括配置分组转发模块,使得分组转发模块实现第二网络规则,和接收来自虚拟网络交换机模块的状态信息以及来自分组转发模块的状态信息。所述状态信息是经由控制平面接收的。

Description

用于实现网络规则的方法和设备

技术领域

[0001] 一个或多个实施例一般地涉及虚拟网络交换机。更具体地说,一个或多个实施例涉及分布式交换,包括根据与接入交换机相关的配置文件,向虚拟网络交换机分配网络规则。

[0002] 背景技术

[0003] 已知的虚拟化计算机系统可以在单个物理计算装置,比如个人计算机或计算机服务器上托管多个虚拟计算机系统。这种虚拟化计算机系统可包括提供接口的管理程序,经由所述接口,多个虚拟计算机系统(也称为虚拟机)可以共享诸如处理器、存储器、硬盘或固态驱动器,和网络接口的硬件资源。

[0004] 一些已知的虚拟化计算机系统在物理网络接口和多个虚拟计算机系统之间实现虚拟交换机或软交换机。当多个虚拟计算机系统中的任何虚拟计算机系统相互通信时,借助虚拟交换机,它们可以在单个物理计算装置内通信。换句话说,源和目的地在一个物理计算装置内的网络业务不脱离该物理计算机系统。这可带来有利的结果,比如减少在所述物理计算机装置通过物理网络接口所连接到的外部通信网络的网络业务,和减少在物理网络接口的网络拥塞。不过,这些方法一般不能在安全性、可视性、管理和/或故障解决方面,提供与外部通信网络和外部通信网络的网络元件(例如,路由器、交换机和管理实体)的一致性。

[0005] 例如,虚拟化计算机系统内的已知虚拟交换机不能实现外部通信网络的网络元件(也称为外部网络元件)的许多特征、功能和/或机制。例如,已知的虚拟交换机不能实现外部网络元件的规则、过滤器、接入控制列表(“ACL”)、镜像能力、入侵探测、计数器、流量表、和其它特征或机制。从而,虚拟化计算机系统内的网络业务是按照和在物理计算机系统所连接的外部通信网络的网络业务不同的方式处理或操作的,造成网络业务的处理不一致,以及可能的安全性、计费和管理降级。

发明内容

[0006] 在一个实施例中,一种方法包括在通信网络的控制平面内,向虚拟网络交换机模块发送配置信号。配置信号被配置成在虚拟网络交换机模块定义第一网络规则。所述方法还包括配置分组转发模块,使得分组转发模块实现第二网络规则,和接收来自虚拟网络交换机模块的状态信息以及来自分组转发模块的状态信息。所述状态信息是经由控制平面接收的。

附图说明

[0007] 图1是按照一个实施例的包括交换机架构的网络的系统方框图。

[0008] 图2是按照一个实施例的包括一组虚拟网络装置和一个虚拟网络交换机模块的服务器的图示。

[0009] 图3是按照另一个实施例的包括一组虚拟网络装置和一个虚拟网络交换机模块的服务器的图示。

[0010] 图4是按照一个实施例的包括交换机架构的网络的一部分的系统方框图。

[0011] 图5是按照一个实施例,在虚拟网络交换机模块交换数据分组的方法的流程图。

[0012] 图6是按照一个实施例,在虚拟网络交换机模块的配置和交换的通信流程图。

[0013] 图7是按照一个实施例,在虚拟网络交换机模块的配置和交换的另一个通信流程图。

[0014] 图8是按照一个实施例,在虚拟网络交换机模块的规定和交换方法的流程图。具体实施方式

[0015] 一个或多个实施例可以在一个或多个虚拟化计算机系统内的一个或多个虚拟交换机提供一个或多个虚拟化计算机系统内的网络业务的分布式处理。在一些实施例中,分布式处理实质上和在操作上与虚拟化计算机系统耦接的通信网络的网络元件处的网络业务的处理一致。例如,计算机服务器(或者说服务器)被配置成托管一组虚拟计算机装置或者虚拟机(也称为虚拟网络装置),并且经交换机(比如操作地与交换机架构耦接的接入交换机或者说边缘装置)与通信网络操作地耦接。虚拟机可以经由在计算机服务器托管的虚拟交换机和计算机服务器的网络接口,与操作地和通信网络耦接的其它计算机装置(也称为网络装置,因为它们操作地与通信网络耦接)通信。另外,指定计算机服务器内的虚拟机可以经由虚拟交换机相互通信。

[0016] 计算机服务器操作地耦接的交换机可以探测计算机服务器和虚拟交换机的存在,并用例如在交换机接收的配置文件中定义的一个或多个网络规则配置虚拟交换机。在一些实施例中,交换机可以是操作地耦接到交换机架构,比如多级交换机架构的接入交换机。配置文件包括与规则、过滤器、接入控制表(“ACL”)、镜像能力、入侵探测、计数器、流量表、和/或交换机的其它特征或机制相关的信息。另外,配置文件可包括诸如默认值、最大和最小限度、和/或与配置文件的特征或机制相关的其它参数的参数。这些特征和机制(这里也通称为网络规则)可应用于虚拟交换机,以使得该虚拟交换机按照与交换机处理网络业务的方式一致或者实质相同的方式处理网络业务(例如,数据分组或数据信元)。换句话说,虚拟交换机可由交换机配置以根据该交换机使用的配置文件实现网络规则。从而,该交换机(或者与该交换机使用的配置相关的处理模块)可分布在该交换机和虚拟交换机之间。

[0017] 为了与网络装置通信,位于计算机服务器(或者在计算机服务器之内)的虚拟交换机向位于该计算机服务器的虚拟交换机发送数据分组,并且该虚拟交换机确定该虚拟交换机是否包括与该数据分组相关的网络规则。例如,网络规则可以与由数据分组的字段识别的源网络装置或目的地网络装置相关。如果虚拟交换机包括这样的网络规则,那么虚拟交换机处理该数据分组,并通过计算机服务器的网络接口把数据分组发送给通信网络。为了与位于计算机服务器的另一个虚拟机通信,虚拟机向该虚拟交换机发送数据分组,并且该虚拟交换机处理该数据分组,随后把该数据分组发送或转发给所述另一个虚拟机。如果该虚拟交换机不包括这样的网络规则,那么该虚拟交换机把数据分组转发给交换机,交换机处理该数据分组。在任何一种情况下,按照和交换机使用的配置一致的方式处理数据分组。

[0018] 在一些实施例中,交换机可以主动地(例如,基于连接或者会话)向虚拟交换机发送网络规则。例如,可在交换机探测到虚拟交换机之后,但是在从虚拟交换机向交换机发送数据分组之前,向虚拟交换机发送网络规则。在一些实施例中,交换机可以反应性地向虚拟交换机发送网络规则。例如,在虚拟交换机从交换机收到以托管在计算机服务器处的虚拟机为目的地的数据分组之后,虚拟交换机可以请求网络规则。在一些实施例中,交换机可以基于每个分组向虚拟交换机发送网络规则。例如,当在交换机处收到数据分组之后,该交换机向虚拟交换机发送与从该虚拟交换机接收的所述数据分组(或者数据分组的一个或多个数据字段)相关的规则、过滤器、ACLjP /或其它配置信息。

[0019] 此外,交换机可以包括专门的硬件组件,比如高速存储器、专用集成电路(“ASICUP/或现场可编程门阵列(“FPGA”),所述专门的硬件组件可以根据在配置文件内描述的一个或多个特征或机制,比虚拟交换机更快或者更有效地处理数据分组。在一些实施例中,虚拟交换机可确定交换机可以更高效地(例如,更快地或者利用更少的功率或能量)处理数据分组,并且可把数据分组转发给交换机以便处理。

[0020] 本说明书中使用的单数形式的词语包括其复数所指,除非上下文明确地另有规定。从而,例如,术语“软件模块”意图表示单个软件模块或者多个软件模块;“存储器”意图表示一个或多个存储器,或者其组合。

[0021] 本说明书中使用的术语交换机或者网络交换机可以描述通信网络中的一个或多个元件(或者说网络元件),该一个或多个元件被配置成或可配置成处理通信网络内的网络业务,比如数据分组或者数据信元。例如,交换机可以是(开放式系统互连(“0SI”)模型的)第2层交换机或路由器、(0SI模型的)第3层交换机或路由器、网络集线器、网桥、网关,和/或根据网络业务的内容或数据字段处理网络业务或执行动作的任何其它网络元件。类似地,交换机可以是计算装置,比如被配置成起交换机作用的计算机服务器。在一些实施例中,交换机可以是托管在计算机服务器处的软件模块,并且可被称为虚拟交换机。

[0022] 图1是按照一个实施例的包括交换机架构110的网络100的系统方框图。如图1中所示,网络100包括交换机架构110、接入交换机120、接入交换机140、服务器122、服务器124、服务器142和服务器144。交换机架构110操作地与接入交换机120和接入交换机140耦接。服务器122和服务器124经由接入交换机120操作地与交换机架构110耦接。服务器142和服务器144经由接入交换机140操作地与交换机架构110耦接。服务器122、接入交换机120、服务器124和交换机架构110包括在网络100的标记为101的部分中。后面结合图4更详细地讨论网络部分101。

[0023] 网络100被配置成使得服务器122、124、142和144可以经由接入交换机120、接入交换机140和交换机架构110相互通信。例如,如数据路径161所示,服务器122可以把以服务器144为目的地的数据分组发给接入交换机120。接入交换机120可以经由交换机架构110把该数据分组转发给接入交换机140。接入交换机140随后可以把该数据分组转发给服务器144。在一些实施例中,接入交换机120和接入交换机140被配置成对分别从服务器122和124,以及服务器142和144接收的数据分组进行分类。

[0024] 如图1中所示,服务器144包括处理器146、接口 145和存储器147。服务器144操作地经接口 145与交换机架构110耦接。接口 145可以是可配置成操作地与交换机架构110耦接的任何接口。例如,接口可以是以太网接口、宽带接口、光纤接口,和/或电话接口。例如,接口也可以是无线接口,比如全球微波互联接入(“WiMAX”)接口、高速分组接入(“HSPA”)接口,和/或无线局域网(“WLAN”)接口。

[0025] 处理器146操作地与接口 145 (也称为网络接口 )耦接,使得处理器146可被配置成经接口 145与交换机架构110和/或服务器122、124和142 (或者在每个服务器122、124和144处的处理器)中的一个或多个通信。处理器146可以是各种处理器中的任意一种。例如,这样的处理器可被实现成硬件模块,比如嵌入式微处理器、作为计算机系统的一部分的微处理器、专用集成电路(“ASIC”)和可编程逻辑器件(“PLD”)。一些这样的处理器可具有多个指令执行单元或核心。也可用编程语言,比如Java™、C++、C、汇编、硬件描述语言、或者任何其它适当的编程语言把这样的处理器实现成一个或多个软件模块。按照一些实施例的处理器包括为一个或多个特定用途而专门设计和构成的媒体和计算机代码(也可被称为代码)。

[0026] 另外,处理器146可以是一组处理器和/或处理(或执行)核。例如,处理器可以是具有一组处理核的单个物理处理器。在一些实施例中,处理器可以是处理器组或集群,比如操作地与共享时钟或同步信号,共享存储器,共享存储总线和/或共享数据总线耦接的一组物理处理器。换句话说,处理器可以是多处理器计算装置中的一组处理器。在一些实施例中,处理器可以是经通信网络操作地相互耦接的一组分布式处理器(例如,具有一个或多个物理处理器的计算装置)。换句话说,处理器可以是借助通信网络相互通信的一组分布式处理器。在一些实施例中,处理器可以是这种处理器的组合。例如,处理器可以是一组分布式计算装置,其中每个计算装置包括共享存储总线的一组物理处理器,并且每个物理处理器包括一组处理核。

[0027] 处理器146还与存储器147操作地耦接。存储器147可以是只读存储器(“ROM”);随机存取存储器(“RAM”),比如磁盘驱动器,和/或诸如静态RAM( “SRAM”)或动态RAM( “DRAM”)的固态RAM ;和/或FLASH存储器或固态磁盘(“SSD”)。在一些实施例中,存储器可以是多个存储器的组合。例如,存储器可包括与磁盘驱动器和SSD耦接的DRAM高速缓冲存储器。

[0028] 除了存储器147之外,一些实施例包括另一个处理器可读介质(图1中未示出),比如服务器144可访问的数据库,所述另一个处理器可读介质上具有用于执行各种处理器实现的操作的指令或计算机代码,例如,所述各种处理器实现的操作包括处理数据分组和/或提供访问诸如数据文件的数字文档的接口。处理器可读介质的例子包括但不限于:诸如硬盘、软盘和磁带的磁性存储介质;诸如光盘/数字视频盘(“CD/DVD” )、光盘-只读存储器(“CD-ROM”)和全息装置的光学存储介质;诸如光磁软盘的磁光存储介质;诸如SSD和FLASH存储器的固态存储器;和ROM和RAM装置。计算机代码的例子包括但不限于:微代码或微指令,机器指令(比如编译器产生的机器指令),和包含由计算机利用解释器执行的高级指令的文件。例如,实施例可利用Java™、C++或者其它面向对象的编程语言和开发工具来实现。计算机代码的其它例子包括但不限于控制信号、加密代码和压缩代码。

[0029] 在一些实施例中,服务器122、124、142和/或交换机架构110的部件(例如,组件、模块、系统、子系统或组合体)均包括与关于服务器144讨论的接口、处理器和存储器类似的接口、处理器和存储器。例如,接入交换机,路由器引擎,和/或操作地与服务器122、124、142和/或144,或者接入交换机120和/或140耦接或者与之通信的其它计算装置,比如计算机终端和/或便携式或手持装置(例如,蜂窝电话装置或者便携式/移动因特网装置)可包括接口、处理器和存储器。

[0030] 交换机架构110可以包括多级,从而可被称为多级交换机架构。另外,交换机架构110可以包括各种元件或者计算装置,比如入站和出站端口和/或队列、输入和输出模块、分组分类模块、路由引擎或模块、交换机控制器,和/或配置成管理或控制交换机架构110和/或经由(或者通过)交换机架构110传送的数据的其它部件。这样的部件可被实现成托管在一个或多个处理器,并且驻留在(或者保存在)操作地与所述一个或处理器耦接的存储器中的软件模块。作为替代地,这样的部件可被实现成诸如专用集成电路和/或现场可编程门阵列的硬件模块。在一些实施例中,这样的部件可被实现成软件模块和硬件模块的组合。在一些实施例中,交换机架构的一个或多个部件可驻留或托管在接入交换机120和/或140处。

[0031] 交换机架构110可以包括数据平面和控制平面,在数据平面中,通过交换机架构110传送数据信号(例如,在服务器122和124与服务器142和144之间发送的数据分组),并且在控制平面中,在交换机架构110内传送控制信号(例如,与数据信号相关的路由信息,和与交换机架构110的一级或多级或部件相关的状态信息)。

[0032] 在一些实施例中,服务器122和124,服务器142和144分别借助一种协议与接入交换机120和140通信,并且接入交换机120和140可以借助另一种协议与交换机架构110通信。例如,服务器122和124,以及142和144借助以太网协议可以分别与接入交换机120和140通信;接入交换机120和140借助基于信元的交换协议(例如,利用固定长度或可变长度信元交换)可以与交换机架构110通信。换句话说,在一些实施例中,接入交换机120和140可以起在网络中借助一种协议通信的服务器和/或其它装置(例如,连接网络的存储装置或存储区域网络装置)和借助另一种协议通信的交换机架构110之间的网关的作用。在一些实施例中,接入交换机120和140中的一个或多个可以是交换机架构110的部件(或部分),并可被称为交换机架构110的边缘装置(或者部件)。

[0033] 在一些实施例中,接入交换机120和140被配置成在转发数据分组之前,对分别从服务器122和124,以及服务器142和144接收的数据分组分类,以确定是否任何处理适合于所述数据分组。例如,接入交换机120和140可以包括分组分类模块,所述分组分类模块被配置成对接入交换机120和140分别从服务器122和124,以及服务器142和144接收的数据分组进行分类。在一些实施例中,数据分组分类可以包括确定数据分组的一部分是否满足包括在诸如防火墙策略、路由策略,和/或接入控制表(“ACL”)的策略中的条件。在一些实施例中,处理动作(这里也称为动作)可以与策略中的条件相关,并且接入交换机120和140被配置成如果在分组分类期间相关条件被满足,那么执行(或完成)该动作。例如,动作可包括修改数据分组的一个或多个参数,访问数据库(未示出)以确定与数据分组相关的路由信息和/或数据分组的目的地,丢弃分组,和/或关于数据分组的其它动作。在一些实施例中,根据在接入交换机120接收的数据分组定义数据信元,通过交换机架构110把数据信元转发给接入交换机140,以及根据数据信元重装数据分组,并且可以把重装的数据分组转发给例如服务器142和/或144中的一个或多个。

[0034] 在一些实施例中,多个动作可以与单一条件相关。例如,如果某一条件被满足,那么接入交换机120可以修改从服务器122接收的数据分组中的存活时间(“TTL”)值,并且可以访问数据库以确定和该数据分组相关或者联系的路由信息。在一些实施例中,动作可以取决于限定条件的另一个动作。换句话说,可以响应在分组分类期间,数据分组满足某条件而执行动作,并且该动作可以限定辅助(或者补充)分类条件。如果辅助分类条件被满足,那么执行另一个动作。例如,可根据限定分组的目的地因特网协议(“IP”)地址的最长前缀匹配的条件(称为主分类条件,或者主条件)对接入交换机140从服务器144接收的数据分组分类。接入交换机140可以执行由主条件触发的动作,该动作限定附加的补充或者辅助分类条件(或者说辅助条件),比如数据分组中的传输控制协议(“TCP”)标记的匹配。接入交换机140可根据该辅助条件进一步对数据分组进行分类。换句话说,如果数据分组中的TCP标记满足在该动作中定义的辅助条件,那么接入交换机140可以执行与该数据分组有关的另一个动作。从而,关于主分类条件的分组分类的结果或成果可以调用或触发关于辅助分类条件的分组分类。

[0035] 在一些实施例中,计算装置,比如交换机架构110的部件,服务器122、124、142和/或144,和/或其它装置可以共享存储器。例如,两个或者更多的计算装置可以共享存储器的一个或多个部分,和/或计算装置内的两个或更多的软件模块(例如,进程、线程、上下文或应用程序)或硬件模块可以共享存储器的一个或多个部分。换句话说,一个或多个软件模块和/或硬件模块可以访问存储器的一部分。例如,交换机架构110内的路由引擎和分类模块可以都访问保存在存储器的单个部分的数据分组或者信元。从而,数据分组可被保存在一个存储器,并被交换机架构110的多个部件访问。在一些实施例中,路由引擎和/或分类模块可被托管于与交换机架构110操作地耦接的接入交换机120和/或140处。

[0036] 图2是按照一个实施例,包括一组虚拟网络装置和一个虚拟网络交换机模块的服务器的示图。服务器220包括网络接口 221、处理器222和存储器223。处理器222与网络接口 221和存储器223操作地耦接。如图2中所示,服务器220可被配置成支持、执行或托管多个虚拟网络装置,比如虚拟网络装置225、226和227。另外,服务器220被配置成支持、执行或托管虚拟网络交换机224。

[0037] 如这里更详细所述,在一些实施例中,虚拟网络交换机模块224可被配置成起接入交换机或者与通信网络操作地耦接的接入交换机的分布式组件的作用,网络接口 221与所述通信网络操作地耦接。换句话说,虚拟网络交换机模块224可以由接入交换机(图2中未示出)规定(provision)(或配置),以应用通过网络接口 221直接与服务器220连接的接入交换机(图2中未示出)所规定的规则、过滤器、ACL、镜像能力、入侵探测、计数器、流量表和/或其它特征或机制。换句话说,虚拟网络交换机模块224可被配置成实现或应用和服务器220通过网络接口 221操作地耦接的接入交换机相关或者联系的配置文件中的网络规则(例如,一组网络规则)。从而,虚拟网络交换机模块224可被配置成按照和服务器220用来与交换机架构操作地耦接的接入交换机一致或相同的方式,处理(例如,交换、路由、过滤和/或计费(account for))数据分组。

[0038] 虚拟网络装置225、226和227可以是配置成作用基本上类似于其它网络装置,比如文件服务器或web服务器的软件模块(例如,可在处理器执行、运行或解释的多批代码或指令),可被称为虚拟机。在一些实施例中,网络装置可以是(或者虚拟网络装置可以仿真或者虚拟化)通用计算装置,比如个人计算机或者计算机服务器。在一些实施例中,这样的网络装置可以托管或执行各种软件模块或者应用程序。在一些实施例中,网络装置可以是(或者虚拟网络装置可以仿真或者虚拟化)专用计算装置,比如web服务器,负载均衡器,代理服务器,数据库服务器,防火墙,网络路由器,网络交换机,和/或其它一些网络设备。

[0039] 在一些实施例中,虚拟网络装置225、226和227可以是用软件实现的服务器,比如在处理器处运行的虚拟机。例如,虚拟网络装置可以是在虚拟机环境中运行的软件模块,比如在Java™虚拟机(“ JVM”)中运行的Java™模块,或者在VMware™虚拟机中运行的操作系统。在一些这样的实施例中,可以用在虚拟网络装置中运行的,或者作为虚拟网络装置的一部分的软件虚拟化和实现网络接口、处理器和存储器。

[0040] 虚拟网络装置225、226和227可保存在服务器220的存储器223,并在处理器222被执行或托管。换句话说,虚拟网络装置225、226和227驻留在存储器223中,并共享处理器222。另外,虚拟网络装置225、226和227可以与诸如多级交换机架构的通信网络、以及经网络接口 221操作地与该通信网络耦接的其它网络装置和/或虚拟网络装置通信。例如,网络接口 221可以与交换机架构的接入交换机或者某其它边缘装置操作地耦接。在一些实施例中,虚拟网络装置225、226和227可以经由虚拟网络交换机模块224和网络接口221与通信网络通信。换句话说,网络接口 221可以提供或者起到通信网络的物理连接的作用,并且虚拟网络交换机模块224可以为虚拟网络装置225、226和227提供到该通信网络的虚连接或虚拟化连接。换句话说,虚拟网络交换机模块可以分别多路复用和解多路复用从虚拟网络装置225、226和227到通信网络的通信(例如,分组交换网络的数据分组和交换机架构的数据信元),和从通信网络到虚拟网络装置225、226和227的通信。在一些实施例中,多路复用和解多路复用功能可以是(0SI网络模型的)第2层交换和/或(0SI网络模型的)第3层路由。

[0041] 例如,虚拟网络装置225可以是文件服务器,服务器220可以经由网络接口 221操作地与通信网络耦接。操作地与通信网络耦接的另一个网络装置可以是虚拟网络装置225的客户端。换句话说,该网络装置可经由通信网络请求在虚拟网络装置225处可访问的数据文件,并且网络装置225可把所请求的数据文件提供给该网络装置。更具体地说,网络装置可经由通信网络向虚拟网络装置225发送一个或多个数据分组,以请求数据文件。数据分组在网络接口 221被接收,并被转发给虚拟网络交换机模块224。虚拟网络交换机模块224可以根据例如所述一个或多个数据分组的一个或多个参数、数据字段或者部分,把数据分组交换、路由或转发给虚拟网络装置225。另外,通过根据例如数据分组的一个或多个参数、数据字段或者部分,应用一个或多个规则、过滤器、ACL、镜像能力、入侵探测机制、计数器、流量表、和/或其它特征或机制,虚拟网络交换机模块224可以处理或操作数据分组。换句话说,虚拟网络交换机模块224可以按照和物理或硬件网络交换机相似的方式进行处理。另外,如果虚拟网络交换机模块224未被配置有关于这些数据分组的网络规则,或者如果物理或硬件网络交换机可以更有效地处理这些数据分组,那么虚拟网络交换机模块224可以把数据分组转发给该物理或硬件网络交换机以便处理。

[0042] 在虚拟网络装置225收到所述一个或多个数据分组之后,虚拟网络装置225可以访问所述一个或多个数据分组请求的数据文件,并把该数据文件(或者所请求的一部分数据文件)发送给网络装置。更具体地说,虚拟网络装置225可以把包括该数据文件的一组分组发送给虚拟网络交换机模块224。虚拟网络交换机模块224可以根据该组分组中的数据分组的一个或多个参数、数据字段或部分,交换、路由或转发该组数据分组。例如,虚拟网络交换机模块224可以根据虚拟网络交换机模块224可访问的转发(或交换或路由)表,插入或变更目的地地址(或者另一参数或数据字段),比如数据分组的下一跳目的地地址,并且随后经由网络接口 221把该组数据分组转发给通信网络。另外,通过根据例如数据分组的一个或多个参数、数据字段、或部分,应用一个或多个规则、过滤器、ACL、镜像能力、入侵探测机制、计数器、流量表和其它特征或机制,虚拟网络交换机模块224可以处理或操作数据分组。

[0043] 类似地,虚拟网络交换机模块224可以交换、路由或转发去往或来自于虚拟网络装置226和227的数据分组,以致虚拟网络装置225、226和227每个都可以经由网络接口221与操作地和通信网络耦接的其它网络装置通信。换句话说,虚拟网络装置225、226和227每个可以与虚拟网络交换机模块224操作地耦接,以致虚拟网络装置225、226和227中的每个可以经由虚拟网络交换机模块224与操作地耦接到通信网络的网络装置通信,其中服务器220也经由网络接口 221操作地与该通信网络耦接。另外,通过把数据分组转发给物理或硬件网络交换机进行处理,虚拟网络交换机模块224可以处理或操作这些数据分组。在一些实施例中,在转发数据分组之前,虚拟网络交换机模块224可以根据例如数据分组的一个或多个参数、数据字段或部分,应用一个或多个规则、过滤器、ACL、镜像能力、入侵探测机制、计数器、流量表和其它特征或机制。从而,可以按照与和服务器220经由网络接口 221操作地耦接的通信网络内的物理或硬件网络交换机相关的配置文件一致的方式,处理和/或计费(account for)从位于服务器220的虚拟网络装置225、226和227处发送和/或在所述虚拟网络装置225、226和227接收的数据分组。在一些实施例中,如果数据分组的目的地不是虚拟网络装置225、226和227中的一个或多个,那么不应用所述规则和/或过滤器。换句话说,如果目的地在服务器220之外,那么可经由网络接口 221把数据分组转发给接入交换机或另一个交换(或转发)装置。

[0044] 如图2中所示,服务器220包括管理程序228。类似于虚拟网络装置225、226和227,管理程序228 (或者与管理程序228相关的数据和指令)被保存在存储器223,并且可以托管在处理器222处。管理程序228可以是在服务器220内或者位于服务器220的诸如应用程序或服务的软件模块,所述软件模块被配置成管理位于服务器220的虚拟网络装置和/或一个或多个虚拟网络交换机模块。例如,管理程序228可以规定(provision)或配置虚拟网络交换机模块224,以便与虚拟网络装置225、226和/或227通信。另外,管理程序228可以例化、暂停、监控和/或以其它方式管理虚拟网络装置225、226和227。此外,管理程序228可以协调(例如,与位于其它服务器的一个或多个管理程序)虚拟网络装置迁移到服务器220和迁离服务器220。

[0045] 图3是按照另一个实施例,包括一组虚拟网络装置和虚拟网络交换机模块的服务器的图示。类似于图2中所示的服务器220,服务器230包括网络接口 231、处理器232和存储器233。处理器232操作地与网络接口 231和存储器233耦接。如图3中所示,服务器230可被配置成支持、执行或托管多个虚拟网络装置,比如虚拟网络装置235、236和237。另夕卜,服务器230被配置成支持、执行或托管位于网络接口 231处的虚拟网络交换机234。换句话说,网络接口 231 (例如,网络接口卡)可被配置成托管虚拟网络交换机模块234。

[0046] 虚拟网络装置235、236和237基本上与关于图2讨论的虚拟网络装置225、226和227相似。另外,虚拟网络交换机模块234功能上基本类似于关于图2讨论的虚拟网络交换机模块224类似。不过,虚拟网络交换机模块234驻留在网络接口 231的存储器(未示出)处,并在网络接口 231的处理器(未示出)处被执行,而不是驻留在存储器233处并在处理器232处被执行。在一些实施例中,网络接口 231可包括配置成托管一个或多个虚拟网络交换机模块的专用硬件组件或部件,比如ASIC和/或FPGA。换句话说,虚拟网络交换机模块234可被托管在位于网络接口 231内或者操作地与网络接口 231耦接的一个或多个专用硬件装置或组件。

[0047] 在一些实施例中,虚拟网络装置235、236和237可以通过虚拟网络交换机模块234相互通信。例如,虚拟网络装置235可以经由处理器232,或者例如直接存储器存取(“DMA”)控制器和/或存储总线,向虚拟网络交换机模块234发送数据分组。虚拟网络交换机模块234可以接收该数据分组,并且可以对该数据分组应用一个或多个规则,以根据应用于该数据分组的数据字段的一个或多个规则确定诸如虚拟网络装置237的目的地网络装置。另夕卜,虚拟网络交换机模块234可对数据分组应用一个或多个网络过滤器,并根据过滤器的结果执行动作。例如,虚拟网络交换机模块234可以根据应用于数据分组的数据字段的过滤器的结果,丢掉或放弃数据分组、转发数据分组到一个或多个其它目的地、递增和/或递减一个或多个计数器或索引,和/或采取某种其它动作。在一些实施例中,规则和/或过滤器是在操作地与网络接口 231耦接的交换机架构的接入交换机处应用的相同或基本相似的规则和/或过滤器。在一些实施例中,如果数据分组的目的地不是虚拟网络装置235、236和237中的一个或多个,那么不应用所述规则和/或过滤器。换句话说,如果目的地在服务器230外部,那么可经由网络接口 231把数据分组转发给接入交换机或者另一个交换(或转发)装置。此外,可对数据分组应用接入交换机的另外的特征和/或机制,比如ACL、镜像能力、入侵探测机制、计数器、和/或流量表。

[0048] 当在虚拟网络交换机模块234处对数据分组应用了任意规则和/或过滤器之后,数据分组可被转发给在虚拟网络交换机模块234处确定的目的地。如果所述目的地是虚拟网络装置235、236和237之一,那么数据分组可经由处理器232,或者例如直接存储器存取(“DMA”)控制器和/或存储总线被转发给该虚拟网络装置。从而,在一些实施例中,可以在虚拟网络交换机模块234处,对从托管在服务器230的一个虚拟网络装置发送给托管在服务器230的另一个虚拟网络装置的数据分组,应用和在操作地与服务器230耦接的接入交换机或另一个转发装置(例如,网络交换机或网络路由器)应用的规则和/或过滤器相同的规则和/或过滤器。换句话说,这些数据分组可以在不被发送给接入交换机的情况下,按照与在接入交换机(或者另一转发装置)处的数据分组的处理和计费一致的方式,在虚拟网络交换机模块234处被处理和/或计费。如果目的地是在服务器230之外的网络装置(例如,服务器或者托管在另一个服务器处的虚拟网络装置),那么数据分组可被转发给网络接口 231操作地耦接的接入交换机。该接入交换机可以类似地对数据分组应用规则和/或过滤器,并把数据分组(例如经由接入交换机操作地耦接的交换机架构)转发给目的地。

[0049] 如图3中所示,服务器230包括管理程序238。类似于虚拟网络装置235、236和237,管理程序238 (或者与管理程序238有关的数据和指令)保存在存储器233处,并且可以托管在处理器232处。管理程序238可以是在服务器230之内或者位于服务器230处的诸如应用程序或服务的软件模块,其被配置成管理位于服务器230的虚拟网络装置和/或一个或多个虚拟网络交换机模块。例如,管理程序238可以规定或配置虚拟网络交换机模块234以与虚拟网络装置235、236和/或237通信。另外,管理程序238可以例化、暂停、监控和/或以其它方式管理虚拟网络装置235、236和237。此外,管理程序228可以协调(例如,与位于其它服务器的一个或多个管理程序)虚拟网络装置迁移到服务器230和迁离服务器230。

[0050] 图4是按照一个实施例,包括交换机架构110的网络100的网络部分101的系统方框图。网络部分101包括服务器122和124、接入交换机120,和交换机架构110。服务器122经线缆410与接入交换机120操作地耦接,服务器124经线缆420与接入交换机120操作地耦接。线缆410和420可以是网络线缆,比如双绞线线缆、光纤线缆和/或某些其它线缆。

[0051] 服务器122包括虚拟网络交换机模块(也称为虚拟交换机)VS 224,和虚拟网络装置(也称为虚拟机)VM 225和VM 226。VM 225和VM 226与VS 224通信。类似地,服务器124包括虚拟网络交换机模块(也称为虚拟交换机)VS 244,和虚拟网络装置(也称为虚拟机)VM 245 和 VM 246。VM 245 和 VM 246 与 VS 244 通信。VM 225,VM 226,VM 245 和VM 246的功能与关于图2-3说明的虚拟网络装置基本相似。另外,VS 224和VS 244的功能与关于图2-3说明的虚拟网络交换机模块基本相似。

[0052] 接入交换机120包括分组转发模块PFM 121和与PFM 121操作地耦接的控制处理器122。PFM 121是配置成对(例如从服务器、虚拟网络装置或交换机架构)接收的数据分组应用网络规则(例如,在配置文件中定义的规则、过滤器、接入控制表(“ACL”)、镜像能力、入侵探测、计数器、流量表、默认值、最大和最小限度、和/或其它分组交换、转发、计费或管理特征或机制)的硬件和/或软件模块(或者一批这样的模块)。在一些实施例中,PFM 121可以包括配置成提供数据分组的高速处理的专用硬件和/或软件。例如,PFM 121可以包括提供数据分组的高速分类的特制硬件(例如,ASIC)。

[0053] 控制处理器122被配置成控制和/或管理在PFM 121、VS 224和VS 244处的数据分组交换和转发。例如,控制处理器122可以接收和解释与接入交换机120相关的配置文件,并向PFM 121、VS 224和VS 244提供与在配置文件中定义的或者包括在配置文件内的网络规则相关的配置指令。换句话说,控制处理器122可以配置PFM 12UVS 224和/或VS244以实现网络规则。在一些实施例中,线缆410和420可以传送数据(例如,往来于服务器122和/或124和接入交换机120的数据分组)和控制信号(例如,从控制处理器122到VS 224和/或VS 244的控制或管理指令,和从VS 224和/或VS 244到接入交换机120的状态或其它报告信息)。换句话说,控制处理器122可以与VS 224和/或VS 244双向通信。在一些实施例中,在独立或者不同的隧道中通过线缆410和/或420传送控制信号和数据信号。例如,可作为一个虚拟局域网(“VLAN”)的一部分传送或传递控制信号,并可在另一个VLAN中传送数据信号。在一些实施例中,可带内发送数据信号,并且可带外发送控制信号。在其它实施例中,其它通道或隧道可被用于分开地发送数据信号和控制信号。

[0054] 例如,接入交换机120可从网络管理实体(未示出)接收配置文件。控制处理器122可以解释该配置文件并配置PFM 121、VM 244和VS 244以实现配置文件。例如,控制处理器122可以写入和/或读取PFM 121的寄存器或存储器以配置PFM 121,从而实现复杂的网络规则(例如,包括优化PFM 121的众多方面或处理步骤的过滤器),并且可以写入和/或读取VS 224和/或VS 244的寄存器或存储器,以配置VS 224和/或VS 244,从而实现使用较少处理资源的其它网络规则。换句话说,控制处理器122可以直接操作VS 224、VS 244和/或PFM 121的存储器和寄存器(或者保存在所述存储器和寄存器的数据值),以在VS 224、VS 244和/或PFM 121处定义、实现或建立网络规则。

[0055] 作为替代地,控制处理器122可以向PFM 121、VS 224和/或VS 244发送包括特定网络规则的描述或定义的控制(或配置)指令(或信号)。PFM 121、VS 224和/或VS244可以解释所述控制指令,并写入和/或读取寄存器或存储器,以分别配置PFM 121、VS224和/或VS 244,从而实现所述网络规则。可在诸如交换机架构的通信网络的控制平面内,借助控制信号把控制指令传送或传递给PFM 121、VS224和/或VS 244。换句话说,控制处理器122可以直接或间接地操作VS 224,VS 244和/或PFM 121的存储器和寄存器(或者保存在所述存储器和寄存器处的数据值),以在VS 224,VS 244和/或PFM 121处定义、实现或建立网络规则。

[0056] 在一些实施例中,包括网络规则的描述和/或与存储器和/或寄存器相关的读取和/或写入指令的控制指令可以从控制处理器122经PFM 121被发送给VS 224和/或VS244。换句话说,PFM 121可以把来自控制处理器122的控制指令转发给VS 224和/或VS244。在一些实施例中,PFM 121和控制处理器122可基于一种协议操作地耦接,并且VS224和VS 244可基于相同的协议操作地与PFM 121耦接。例如,控制处理器122和PFM 121可利用以太网连接操作地耦接,并且VS 224和VS 244可利用以太网连接操作地与PFM 121耦接。在一些实施例中,PFM 121和控制处理器122可基于一种协议操作地耦接,并且VS224和VS 244可基于不同的协议操作地与PFM 121耦接。例如,控制处理器122和PFM 121可利用以太网连接操作地耦接,并且VS 224和VS 244可利用光纤通道连接或者不同于以太网连接的某种其它连接操作地与PFM 121耦接。

[0057] 另外,VS 224、VS 244和/或PFM 121可以向控制处理器122提供基本实时的报告或者批量报告,比如状态、错误、异常和/或协议信息。例如,VS 224、VS 244和/或PFM121可以把在VS 224,VS 244和/或PFM 121处导致错误或异常的数据分组转发给控制处理器122。更具体地说,例如,VS 224、VS 244和/或PFM 121可以发送包括下述任意之一的数据分组的报告:不能被解析的源标识符或者目的地标识符(例如,(0SI模型的)L2或L3地址不能位于转发表中),循环冗余校验(“CRC”)的错误,过期的存活时间(“TTL”)参数,和/或其它错误或异常。另外,VS 224,VS 244和/或PFM 121可发送包括或者涉及协议信息,比如地址解析协议(“ARP”)分组、生成树协议(“STP”)分组、心跳或生存分组、和/或其它协议分组的报告。此外,可从VS 224,VS 244和/或PFM 121向控制处理器122发送包括与VS 224、VS 244和/或PFM 121相关的利用情况(例如,利用值或利用率)和/或其它统计信息的报告。

[0058] 在一些实施例中,控制处理器122可以基本实时地(例如,响应于当前网络状态和/或统计信息)改变配置(例如,VS 224,VS 244和/或PFM 121实现哪些网络规则)。例如,控制处理器122可以根据VS 224、VS 244和/或PFM 121任意之一的利用情况,向或者从VS 224、VS 244和/或PFM 121转移(或者移动或者迁移)网络规则。换句话说,如果服务器122具有相对较低的利用情况,并且PFM 121有时具有相对较高的利用情况,那么控制处理器122可配置VS 224实现以前在PFM 121处实现的一些网络规则(例如,与VM225和/或VM 226相关的一个或多个网络规则),和配置PFM 121不实现这些网络规则。当PFM 121的利用情况降低时,控制处理器122可以类似地把网络规则从VS 224转移回PFM121。

[0059] 从而,在一些实施例中,数据分组处理和/或交换可以分布在网络内。换句话说,接入交换机的控制平面(例如,控制处理器、分组转发模块和一个或多个虚拟分组转发模块之间的控制和通信)可分布在网络内。参考图4,控制处理器122可向PFM 121、VS224和VS 244分布数据分组处理和/或交换。换句话说,控制处理器122可以把VM224和VM 244配置成分组转发模块。换句话说,VM 224和VM 244可以起数据平面(例如,往来于包括虚拟网络装置在内的网络装置传送和接收数据分组)和分布式控制空间(例如,传送和接收控制指令、报告、和状态及其它控制信息)内的虚拟分组转发模块的作用。

[0060] 图5是按照一个实施例,在虚拟网络交换机模块交换数据分组的方法的流程图。过程500可被实现成例如软件模块(例如,源代码、目标代码、一个或多个脚本、或者指令),所述软件模块保存在存储器处,并且可在位于计算装置的操作地与存储器耦接的处理器处被执行和/或解释或编译。例如,保存在计算装置的存储器处的处理器可执行指令可在位于计算装置处的处理器被执行,从而使处理器执行过程500的步骤。在一些实施例中,过程500可被实现成位于计算装置处的一个或多个硬件模块,比如ASIC、FPGA、处理器或者其它硬件模块。在一些实施例中,过程500可被实现成位于计算装置,比如服务器或者交换机架构的部件(例如,组件、模块、系统、子系统或组合体)的一个或多个硬件模块和软件模块的组合。

[0061] 在510,定义位于例如服务器处的虚拟网络交换机模块,并在520,初始配置该虚拟网络交换机模块。通过根据配置文件例化和/或初始化软件模块、应用程序、数据结构、硬件装置、入站端口或队列、出站端口或队列、和/或其它机制,可以在服务器处定义虚拟网络交换机模块。位于接入交换机的控制处理器可以根据在配置文件中描述的网络规则,配置虚拟网络交换机模块。在一些实施例中,配置文件可以是与诸如交换机架构的接入交换机的分组转发装置相关联的配置文件。在一些实施例中,配置文件可被称为接入交换机配置文件。

[0062] 随后在步骤530,在服务器处`接收数据分组。例如,从托管于某一服务器的一个虚拟网络装置向托管于该服务器的另一个虚拟网络装置发送的数据分组可以在托管于该服务器的虚拟网络交换机模块处被接收。如果在步骤540,在该虚拟网络交换机模块处的一个或多个规则、过滤器、ACL、镜像能力、入侵探测机制、计数器、流量表和/或其它特征或机制被满足,或者被应用于数据分组,那么在步骤545确定该数据分组的目的地。

[0063] 如果该数据分组具有相对于虚拟网络交换机模块来说在本地的目的地,那么在步骤551,可以在该虚拟网络交换机模块处处理该数据分组。换句话说,如果数据分组的目的地位于托管该虚拟网络交换机模块的服务器上(例如,目的地是托管于该服务器的虚拟网络装置(或者说虚拟机)),那么在步骤551,虚拟网络交换机模块可以处理该数据分组,并在步骤552,把该数据分组转发给目的地。

[0064] 如果数据分组具有相对于虚拟网络交换机模块来说非本地的目的地,那么在步骤553,该数据分组可以被转发给接入交换机,并在该接入交换机处被处理。换句话说,如果数据分组的目的地位于除托管该虚拟网络交换机模块的服务器之外的服务器上(例如,目的地是托管于另一个服务器的虚拟网络装置(或者说虚拟机)),那么该虚拟网络交换机模块可以把该数据分组转发给接入交换机,并且该接入交换机可以处理该数据分组,并将其转发给目的地。

[0065] 返回步骤540,如果例如在实现过程500的服务器或虚拟网络交换机模块处,不存在关于该分组的规则、过滤器、ACL、镜像能力、入侵探测机制、计数器、流量表和其它特征或机制,那么在步骤571,该数据分组可被发送给另一个装置处理(例如在接入交换机处处理)。如上所述,在一些实施例中,如图5中所示,该数据分组的目的地操作地与实现或执行过程500的虚拟网络交换机模块耦接,并且该数据分组在所述另一个装置(例如,接入交换机)处被处理之后,在步骤572,从接入交换机把该数据分组发送给虚拟网络交换机模块,并在虚拟网络交换机模块处接收该数据分组。在接收到了数据分组(例如,在虚拟网络交换机模块处)之后,在步骤573,该数据分组可被发送或转发到目的地,比如操作地与虚拟网络交换机模块耦接的虚拟网络装置。

[0066] 除了把数据分组转发给虚拟网络交换机模块之外,接入交换机还可以配置位于虚拟网络交换机模块处的网络规则。在步骤574,实现过程500的虚拟网络交换机模块可以从接入交换机接收配置信号。换句话说,接入交换机可以配置实现过程500的虚拟网络交换机模块,以实现网络规则或者根据网络规则处理数据分组。网络规则可以与数据分组有关,并且在虚拟网络交换机模块被配置成实现网络规则之后,可被虚拟网络交换机模块用于处理类似于该数据分组的其它数据分组。例如,来自接入交换机的配置信号可以更新位于虚拟网络交换机模块的规则表(例如,路由表或交换表)。从而,响应于虚拟网络交换机模块把数据分组转发给接入交换机处理,接入交换机可以反应性地向虚拟网络交换机模块提供网络规则。

[0067] 在一些实施例中,过程500可以包括比图5中示出的步骤更多或更少的步骤。在一些实施例中,考虑到增加的步骤、预处理或后处理等,一些步骤可按照不同的顺序发生。例如,在一些实施例中,虚拟网络交换机模块不包括与其有关的网络规则的数据分组的目的地位于除托管该虚拟网络交换机模块的服务器之外的服务器,并且不执行步骤572、573和574。

[0068] 图6是按照一个实施例,在虚拟网络交换机模块处的配置和交换的通信流图。图6中示出的通信流可被称为虚拟网络交换机模块的主动规定或配置。网络管理模块610可向接入交换机620发送包括规则、过滤器和/或其它配置信息(例如,ACL、镜像能力、入侵探测机制、计数器、流量表和/或其它特征或机制)的接入交换机配置文件。接入交换机620接收接入交换机配置文件,并根据接入交换机配置文件配置(或规定)它自己。例如,响应于接收到接入交换机配置文件,接入交换机620可以例化和/或初始化数据结构、硬件装置、入站端口或队列、出站端口或队列、和/或其它机制。

[0069] 另外,接入交换机620可用配置文件中的网络规则配置(或者规定)托管或者配置成托管虚拟网络交换机模块的任意服务器。在一些实施例中,当接入交换机620接收到接入交换机配置文件时,接入交换机620用网络规则配置操作地与接入交换机620耦接的这种服务器。在一些实施例中,每当这样的服务器变成操作地与接入交换机620耦接时,或者当接入交换机620确定这样的服务器操作地与接入交换机620耦接时,接入交换机620用网络规则配置这样的服务器。换句话说,接入交换机620可以保存接入交换机配置文件,并且当接入交换机620探测到托管或者配置成托管虚拟网络交换机模块的服务器时,接入交换机620用网络规定配置这样的服务器。换句话说,接入交换机620可以向虚拟网络交换机模块630,或者托管或配置成托管虚拟网络交换机模块的服务器推行所述网络规则。在一些实施例中,虚拟网络交换机模块(或者托管或配置成托管虚拟网络交换机模块的服务器)可以定期地或者根据某一条件,比如托管虚拟网络交换机模块的服务器的配置的变化,从接入交换机请求网络规则。

[0070] 在一些实施例中,在接入交换机620接收的配置文件可包括多个类别或种类的规贝1J、过滤器和/或其它配置信息(例如,ACL、镜像能力、入侵探测机制、计数器、流量表和/或其它特征或机制)。例如,接入交换机可与服务器和交换机架构操作地耦接。接入交换机可利用数据分组与服务器通信,并利用数据信元与交换机架构通信。一种种类的规则、过滤器和/或其它配置信息(例如,ACL、镜像能力、入侵探测机制、计数器、流量表和/或其它特征或机制)可以涉及数据分组,并且另一种种类的规则、过滤器和/或其它配置信息(例如,ACL、镜像能力、入侵探测机制、计数器、流量表和/或其它特征或机制)可以涉及数据信元。在一些实施例中,一种类别的规则、过滤器和/或其它配置信息(例如,ACL、镜像能力、入侵探测机制、计数器、流量表和/或其它特征或机制)可被用于配置虚拟网络交换机模块630,并且另一种类别的规则、过滤器和/或其它配置信息(例如,ACL、镜像能力、入侵探测机制、计数器、流量表和/或其它特征或机制)不被用于配置虚拟网络交换机模块630。例如,涉及数据分组的那种类别的规则、过滤器和/或其它配置信息(例如,ACL、镜像能力、入侵探测机制、计数器、流量表和/或其它特征或机制)可被用于配置虚拟网络交换机模块630,并且那种类别的规则、过滤器和/或其它配置信息(例如,ACL、镜像能力、入侵探测机制、计数器、流量表和/或其它特征或机制)不被用于配置虚拟网络交换机模块630。

[0071] 在一些实施例中,虚拟网络交换机模块630可以向接入交换机620提供涉及和虚拟网络交换机模块630操作地耦接的虚拟网络装置的信息。例如,虚拟网络交换机模块630可以向接入交换机620提供与涉及虚拟网络装置640和650的标识符,比如网际协议(“IP”)地址和/或媒体接入控制(“MAC”)地址。在一些实施例中,规则、过滤器和/或其它配置信息(例如,ACL、镜像能力、入侵探测机制、计数器、流量表和/或其它特征或机制)可涉及一个或多个虚拟网络装置,并且接入交换机620可以根据例如虚拟网络装置640和/或650的标识符,确定配置文件中的哪些规则、过滤器、和/或其它配置信息(例如,ACL、镜像能力、入侵探测机制、计数器、流量表和/或其它特征或机制)涉及虚拟网络装置640和/或650。随后,接入交换机620可以把涉及虚拟网络装置640和/或650的规则、过滤器和/或其它配置信息(例如,ACL、镜像能力、入侵探测机制、计数器、流量表和/或其它特征或机制)发送给虚拟网络交换机模块630。换句话说,接入交换机620可以配置虚拟网络交换机模块630,以对虚拟网络交换机模块630实现在配置文件中描述的与特定虚拟网络装置相关或者关联的网络规则的子集。

[0072] 在一些实施例中,位于接入交换机620的控制处理器可以请求托管或者配置成托管虚拟网络交换机模块的服务器例化或初始化虚拟网络交换机模块630。换句话说,接入交换机620可以例化虚拟网络交换机模块630 (或者请求虚拟网络交换机模块630的例化),并且随后根据配置文件中的网络规则配置虚拟网络交换机模块630。

[0073] 在虚拟网络交换机模块630的基于包括在接入交换机配置文件中的网络规则,比如过滤器和/或其它配置信息(例如,ACL、镜像能力、入侵探测机制、计数器、流量表和/或其它特征或机制)的配置可以包括位于接入交换机620处的由控制处理器进行的寄存器和/或存储器写入和/或读取。例如,接入交换机620可以在虚拟网络交换机模块630处例化和/或初始化数据结构、硬件装置、入站端口或者队列、出站端口或者队列、和/或其它机制。在一些实施例中,一个或多个软件模块,比如托管于托管虚拟网络交换机模块630的服务器处或者在该服务器处执行的应用程序,可以根据从接入交换机620发送给该服务器的配置指令规定(provision)虚拟网络交换机模块630。

[0074] 在虚拟网络交换机模块630已被规定(provision)之后,该虚拟网络装置640可以向虚拟网络装置650发送数据分组,虚拟网络装置640和虚拟网络装置650均托管于托管虚拟网络交换机模块630的服务器处。如图6中所示,虚拟网络装置640把数据分组发送给虚拟网络交换机模块630。虚拟网络交换机模块630接收该数据分组,并处理该数据分组(例如,对该数据分组应用规则、过滤器、ACL、安全机制、计数器、和/或流量表)。在虚拟网络交换机模块630处的处理包括确定该数据分组的目的地。例如,虚拟网络交换机模块630可根据该数据分组的目的地地址字段,确定虚拟网络装置650是该数据分组的目的地。虚拟网络交换机模块630随后可以把该数据分组转发给虚拟网络装置650。

[0075] 例如,网络管理模块610可以例如响应于探测到的网络拓扑的变化,该变化包括交换机架构的一个或多个网络装置或部分的增加、去除、和/或工作状态的改变,定义接入交换机配置文件更新,并且可以把接入交换机配置文件更新提供给接入交换机620。接入交换机配置文件更新可以是包括额外和/或不同(例如,改变的参数值)的规则、过滤器、ACL、镜像能力、入侵探测机制、计数器、流量表和/或其它特征或机制的新配置文件。在一些实施例中,接入交换机配置文件更新可代表相对于先前或者初始的接入交换机配置文件的增量(delta)或变化,并且可以只包括自从定义初始(或者最新)的接入交换机配置文件以来,已被例如网络管理模块610改变或者更新的那些规则、过滤器、ACL、镜像能力、入侵探测机制、计数器、流量表和/或其它特征或机制(和/或相关参数)。

[0076] 在一些实施例中,可以响应于包括规则和/或过滤器的网络策略的变化,定义或生成接入交换机配置文件更新。可在接入交换机620处接收接入交换机配置文件更新,并且接入交换机620可以根据该接入交换机配置文件更新,更新其配置或规定。另外,接入交换机620可以用网络规则更新,配置托管于操作地与接入交换机620耦接的服务器的虚拟网络交换机模块。例如,接入交换机620可以改变在虚拟网络交换机模块630处的先前配置期间设置的寄存器值。在一些实施例中,接入交换机620可以只根据接入交换机配置文件更新中涉及虚拟网络装置640和/或650,或者涉及虚拟网络交换机模块630的部分,有选择地配置虚拟网络交换机模块630。如上所述,在一些实施例中,虚拟网络交换机模块(或者托管或配置成托管虚拟网络交换机模块的服务器)可以定期地或者根据某种条件,比如托管虚拟网络交换机模块的服务器的配置的变化,从接入交换机请求网络规则更新。在虚拟网络交换机模块630的配置已被更新之后,虚拟网络交换机模块630随后可以根据接入交换机配置文件更新来处理数据分组。

[0077] 在一些实施例中,接入交换机620可以在没有从网络管理模块610接收接入交换机配置文件更新的情况下,更新网络规则、增加网络规则、和/或从虚拟网络交换机模块630的配置中删除网络规则。例如,位于接入交换机620的控制处理器可以从位于接入交换机620 (或者位于操作地与通信网络耦接的另一个装置)的分组转发模块,以及从虚拟网络交换机模块630 (即,从虚拟分组转发模块)接收状态报告。控制处理器可以根据分组转发模块和/或虚拟网络交换机模块630的当前、过去或预期利用,把网络规则转移到分组转发模块和虚拟网络交换机模块630,和从分组转发模块和虚拟网络交换机模块630转移走网络规则。换句话说,位于接入交换机620处的控制处理器可以在分组转发模块处禁用网络规则,并在虚拟网络交换机模块630处启用这些网络规则。另外,位于接入交换机620处的控制处理器可以在虚拟网络交换机模块630处禁用网络规则,并在分组转发模块处启用这些网络规则。

[0078] 图7是按照一个实施例,在虚拟网络交换机模块处的配置和交换的另一个通信流程图。图7中示出的通信流程图可被称为虚拟网络交换机模块的反应性规定或配置。网络管理模块610可以向接入交换机620发送包括规则、过滤器、和/或其它配置信息(例如,规贝1J、过滤器、ACL、镜像能力、入侵探测机制、计数器、流量表和/或其它特征或机制)的接入交换机配置文件。接入交换机620接收接入交换机配置文件,并根据该接入交换机配置文件配置(或规定)它自己。例如,响应于收到接入交换机配置文件,接入交换机620可以例化和/或初始化数据结构、硬件装置、入站端口或队列、出站端口或队列、和/或其它机制。

[0079] 虚拟网络装置640可以向虚拟网络装置650发送数据分组,虚拟网络装置640和虚拟网络装置650均托管于托管虚拟网络交换机模块630的服务器处,例如如下面的流程中所示。虚拟网络装置640向虚拟网络交换机模块630发送数据分组。虚拟网络交换机模块630接收数据分组,并试图处理该数据分组(例如,对数据分组应用保存在虚拟网络交换机模块630处的任何适用的规则、过滤器、ACL、计数器、安全机制和/或流量表)。如图7中所示,虚拟网络交换机模块630不包括用于处理数据分组的规则、过滤器或其它信息,并且把数据分组转发给接入交换机620处理。接入交换机620包括与处理数据分组相关的处理信息(例如,规则、过滤器、ACL、镜像能力、入侵探测机制、计数器、流量表和其它特征或机制),并且接入交换机620处理数据分组。在接入交换机620处的处理包括确定数据分组的目的地。例如,接入交换机620可根据数据分组的目的地地址字段,确定虚拟网络装置650是该数据分组的目的地。接入交换机620随后可以变更或者定义数据分组的目的地数据字段,并把数据分组转发给虚拟网络交换机模块630。虚拟网络交换机模块630随后根据例如数据分组的目的地数据字段,把数据分组转发给虚拟网络装置650。

[0080] 在接入交换机620把数据分组转发给虚拟网络交换机模块630之后,接入交换机620用与该数据分组相关的网络规则配置虚拟网络交换机模块630。在一些实施例中,网络规则可以是涉及作为例如源参数或者目的地参数而包括在数据分组中的虚拟网络装置的标识符的规则。在一些实施例中,接入交换机620可以根据例如虚拟网络装置的标识符,把与操作地耦接虚拟网络交换机模块630的一个或多个虚拟网络装置有关的一组规则、过滤器和/或其它配置信息(例如,ACL、镜像能力、入侵探测机制、计数器、流量表和/或其它特征或机制)发送给虚拟网络交换机模块630。

[0081 ] 从而,接入交换机620 (或者位于接入交换机620处的控制处理器)可以根据网络规则(或者所述一组规则、过滤器、和/或其它配置信息,比如ACL、镜像能力、入侵探测机制、计数器、流量表和/或其它特征或机制)更新虚拟网络交换机模块630的配置或规定。例如,接入交换机620可以更新路由表、交换表、转发表和/或流量表,或者使虚拟网络交换机模块630丢弃分组、把分组镜像到另一个目的地,和/或根据网络规则应用某些其它规贝U、过滤器、ACL、镜像能力、入侵探测机制、和/或计数器。换句话说,网络规则可被应用于虚拟网络交换机模块630。

[0082] 如图7中所示,在对虚拟网络交换机模块630应用网络规则之后,虚拟网络交换机模块630可以根据网络规则路由或转发数据分组。换句话说,虚拟网络交换机模块630可以处理网络规则所涉及的数据分组。例如,虚拟网络装置640可以经虚拟网络交换机模块630把数据分组发送给虚拟网络装置650,如图7中所示。虚拟网络交换机模块630可以根据网络规则处理数据分组,并把数据分组转发给虚拟网络装置650。

[0083] 在一些实施例中,虚拟网络装置可从操作地与通信网络耦接的一个服务器迁移到操作地与所述通信网络耦接的另一个服务器。在一些实施例中,虚拟网络交换机模块和/或管理程序可以把与虚拟网络装置相关的规则、过滤器和/或其它配置信息(例如,ACL、镜像能力、入侵探测机制、计数器、流量表和/或其它特征或机制)转发给该虚拟网络装置将迁移到的服务器。换句话说,与虚拟网络装置有关的规则、过滤器和/或其它配置信息(例如,ACL、镜像能力、入侵探测机制、计数器、流量表和/或其它特征或机制)可以和该虚拟网络装置的其它参数(例如,工作状态)一起被发送给在该虚拟网络装置的迁移之后,该虚拟网络装置将被例化于的服务器。在一些实施例中,在虚拟网络装置已从托管虚拟网络交换机模块和迁移前的虚拟网络装置的服务器迁走(或转走)之后,虚拟网络交换机模块可丢弃或者删除与该虚拟网络装置有关的规则、过滤器和/或其它配置信息(例如,ACL、镜像能力、入侵探测机制、计数器、流量表和/或其它特征或机制)。在一些实施例中,在虚拟网络装置从网络中的一个服务器迁移到网络中的另一个服务器之后,接入交换机或者位于接入交换机的控制处理器可以配置一个或多个虚拟网络交换机模块(或者更新其配置)。

[0084] 图8是按照一个实施例,在虚拟网络交换机模块的规定和交换的方法的流程图。例如,过程800可被实现成软件模块(例如,源代码、目标代码、一个或多个脚本、或者指令),所述软件模块保存在存储器处,并且可在与位于计算装置的存储器操作地耦接的处理器处被执行和/或解释或编译。例如,保存在计算装置的存储器处的处理器可执行指令可在位于计算装置的处理器被执行,从而使处理器执行过程800的步骤。在一些实施例中,过程800可被实现成位于计算装置的一个或多个硬件模块,比如ASIC、FPGA、处理器或者其它硬件模块。在一些实施例中,过程800可被实现成位于计算装置,比如服务器或者交换机架构的部件(例如,组件、模块、系统、子系统或组合体)的一个或多个硬件模块和软件模块的组合。

[0085] 在步骤810定义位于例如服务器的虚拟网络交换机模块,并在步骤820初始配置该虚拟网络交换机模块。通过根据配置文件,例化和/或初始化软件模块、应用程序、数据结构、硬件装置、入站端口或队列、出站端口或队列、和/或其它机制,可以在服务器定义虚拟网络交换机模块。位于接入交换机的控制处理器可以根据在配置文件中描述的网络规则配置虚拟网络交换机模块。在一些实施例中,配置文件可以是与诸如交换机架构的接入交换机的分组转发装置关联的配置文件。在一些实施例中,配置文件可被称为接入交换机配置文件。

[0086] 随后在步骤830,在服务器接收数据分组。例如,从托管于某一服务器的一个虚拟网络装置向托管于该服务器的另一个虚拟网络装置发送的数据分组可以在托管于该服务器的虚拟网络交换机模块被接收。如果在步骤840,在该虚拟网络交换机模块的一个或多个规则、过滤器、ACL、镜像能力、入侵探测机制、计数器、流量表和/或其它特征或机制被满足,或者应用于该数据分组,那么在步骤845确定处理持续时间。换句话说,如果存在关于该数据分组的网络规则,那么服务器(或者托管于服务器的虚拟网络交换机模块可以确定在该服务器处理该数据分组(例如,对该数据分组应用规则)所需的(或者估计或计算的)时间量。如果处理持续时间小于阈值,那么在步骤851,可以在该服务器处理该数据分组。换句话说,如果在服务器处理该数据分组所需的时间量小于阈值,那么可以在该服务器处理该数据分组。在步骤851处理了数据分组之后,在步骤852,可把数据分组发送或转发给例如该数据分组的目的地。

[0087] 如果在步骤845,处理持续时间大于阈值,那么在步骤853,可以把数据分组发送给转发装置,比如操作地与交换机架构耦接的接入交换机。换句话说,如果在服务器处理数据分组所需的(或者估计或计算的)时间量大于阈值,那么该数据分组可被卸下,或者发送给另一个装置(例如,接入交换机)处理。例如,数据分组可被发送给具有配置成提供该数据分组的高速处理的专用硬件和/或软件的接入交换机。例如,接入交换机可包括特制硬件(例如,ASIC),以提供数据分组的高速分类。另外,可以只在接入交换机对数据分组应用一些规则、过滤器和/或其它配置信息(例如,ACL、镜像能力、入侵探测机制、计数器、流量表和/或其它特征或机制),并且虚拟网络交换机模块可以把数据分组转发给接入交换机,以根据这些规则、过滤器和/或其它配置信息(例如,ACL、镜像能力、入侵探测机制、计数器、流量表和/或其它特征或机制)被处理。换句话说,数据分组可被转发给接入交换机,以便进行另外的处理。

[0088] 在一些实施例中,可以在接收数据分组之前,确定或分配阈值。例如,可以在虚拟网络交换机模块的初始化或配置期间,确定或分配阈值。例如,可根据托管虚拟网络交换机模块的服务器的计算能力(例如,处理器速度、处理器的数目、可用存储器和存储器速度),将要应用于数据分组的规则、过滤器和/或其它配置信息(例如,ACL、镜像能力、入侵探测机制、计数器、流量表和/或其它特征或机制)的计算复杂度,和/或通信网络内的时间约束条件和/或带宽限制,确定阈值。

[0089] 在一些实施例中,可根据通信网络或者托管虚拟网络交换机模块的服务器的当前利用情况,动态地(例如,在虚拟网络交换机模块的工作期间)或者实时地(例如,在收到数据分组之后)确定或分配阈值。例如,如果服务器在利用率较低的情况下工作,那么数据分组可以被处理,因为服务器可以向规则、过滤器和/或其它配置信息(例如,ACL、镜像能力、入侵探测机制、计数器、流量表和/或其它特征或机制)分配足够的资源(例如,处理器时间或存储器)。如果服务器在利用率较高的情况下工作,那么数据分组可被卸载到接入交换机处理,因为服务器不能向规则、过滤器和/或其它配置信息(例如,ACL、镜像能力、入侵探测机制、计数器、流量表和/或其它特征或机制)分配足够的资源(例如,处理器时间或存储器)。类似地,在一些实施例中,当随着时间的过去,通信网络和/或服务器利用率变化时,可以更新或改变在接收数据分组之前分配的阈值,使得使用当在虚拟网络交换机模块收到分组时的阈值数值。换句话说,阈值可以被静态确定和动态修改。

[0090] 在一些实施例中,对数据分组的接收者(例如,目的地虚拟网络交换机模块)来说,数据分组被传输到接入交换机处理可以是透明的。例如,数据分组可被转发给接入交换机,被处理,随后被转发回虚拟网络交换机模块,并且数据分组的TTL参数可不被改变。换句话说,可在接入交换机和/或虚拟网络交换机模块处理数据分组,使得数据分组的接收者不能区分该数据分组和未转发给接入交换机进行处理的另一个数据分组。

[0091] 在一些实施例中,如图8中所示,数据分组的目的地操作地与实现或执行过程800的虚拟网络交换机模块耦接,并且在数据分组在另一个装置处被处理之后,在步骤854,数据分组从接入交换机被发送给虚拟网络交换机模块,并在虚拟网络交换机模块处被接收。在收到数据分组(例如,在虚拟网络交换机模块处收到数据分组)之后,在步骤855,数据分组可被发送或转发给目的地,比如操作地与虚拟网络交换机模块耦接的虚拟网络装置。

[0092] 返回步骤840,如果例如在实现过程800的服务器或虚拟网络交换机模块处,不存在关于分组的任何规则、过滤器、ACL、镜像能力、入侵探测机制、计数器、流量表和其它特征或机制,那么在步骤871,数据分组可被发送给另一个装置处理。如上所述,在一些实施例中,如图8中所示,数据分组的目的地操作地与实现或执行过程800的虚拟网络交换机模块耦接,并且在数据分组在所述另一个装置处被处理之后,在步骤872,从接入交换机把该数据分组发送给虚拟网络交换机模块,并在虚拟网络交换机模块处接收该数据分组。在收到数据分组(例如,在虚拟网络交换机模块收到数据分组)之后,在步骤873,数据分组可被发送或转发给目的地,比如操作地与虚拟网络交换机模块耦接的虚拟网络装置。

[0093] 除了把数据分组转发给虚拟网络交换机模块之外,接入交换机可以在虚拟网络交换机模块处配置网络规则。在步骤874,实现过程800的虚拟网络交换机模块可以从接入交换机接收配置信号。换句话说,接入交换机可以配置实现过程800的虚拟网络交换机模块,以实现网络规则或者根据网络规则处理数据分组。网络规则可以与数据分组有关,并且在虚拟网络交换机模块被配置成实现网络规则之后,可被虚拟网络交换机模块用于处理类似于该数据分组的其它数据分组。例如,来自接入交换机的配置信号可以更新位于虚拟网络交换机模块的规则表(例如,路由表或交换表)。从而,响应于虚拟网络交换机模块把数据分组转发给接入交换机处理,接入交换机可以反应性地向虚拟网络交换机模块提供网络规则。

[0094] 在一些实施例中,过程800可以包括比图8中说明的步骤更多或更少的步骤。在一些实施例中,例如,考虑到增加的步骤、预处理或后处理等,一些步骤可按照不同的顺序发生。例如,在一些实施例中,在接收配置文件之前定义(例如,例化或初始化)虚拟网络交换机模块。在一些实施例中,在接收配置文件之前发送对配置文件的请求。另外,在一些实施例中,在收到数据分组之前,未收到配置文件。此外,在一些实施例中,在例如步骤874,接入交换机可向虚拟网络交换机模块发送配置文件,而不是网络规则。换句话说,响应于从虚拟网络交换机模块收到数据分组,接入交换机可发送整个配置文件。

[0095] 这里说明的方法和服务可用软件、硬件、或者它们的组合来完成。例如,硬件模块可包括通用处理器、FPGA和/或ASIC。软件模块可用各种软件语言(例如,计算机代码)来表示,包括C、C++、Java™、Ruby、Visual Basic™、和其它面向对象的、过程的或者其它编程语言和开发工具。计算机代码的例子包括但不限于微代码或微指令、机器指令,比如编译器产生的机器指令,和包含由计算机利用解释器执行的高级指令的文件。计算机代码的其它例子包括但不限于控制信号、加密代码和压缩代码。尽管已显示和说明了几个实施例,不过要认识到可做出各种变化和修改。

[0096] 这里描述的一些实施例涉及一种包括计算机可读介质(也可称为处理器可读介质)的计算机存储产品,所述计算机可读介质上具有用于执行各种计算机实现的操作的指令或计算机代码。所述介质和计算机代码(也可称为代码)可以是为一个或多个专门用途而设计和构成的介质和计算机代码。计算机可读介质的例子包括但不限于:诸如硬盘、软盘和磁带的磁性存储介质;诸如压缩盘/数字视频盘(“CD”/ “DVD”)、光盘-只读存储器(“⑶-ROM”)和全息装置的光学存储介质;诸如光盘的磁光存储介质;载波信号处理模块;和专门配置成保存和执行程序代码的硬件装置,比如专用集成电路(“ASIC”)、可编程逻辑器件(“PLD”)、只读存储器(“ROM”)和随机存取存储器(“RAM”)装置。

[0097] 尽管上面说明了多个实施例,不过应明白它们只是作为例子给出的,而不是对本发明的限制,可以产生形式和细节方面的各种变化。例如,尽管关于交换机架构进行了说明,不过这里公开的实施例适用于其它通信网络,这里关于一个网络规则公开的实施例可以适用于其它网络规则。另外,关于软件模块描述的实施例通常适用于硬件模块;关于硬件模块描述的实施例通常适用于软件模块。除了互斥的组合之外,可以以任意组合结合这里描述的设备和/或方法的任意部分。这里描述的实施例可包括所描述的不同实施例的功能、组件和/或特征的各种组合和/或子组合。例如,关于主动配置或反应性配置讨论的方法和设备可适用于反应性配置或主动配置。此外,本说明书中公开的每个特征可被提供相同、相当或相似用途的备选特征替代,除非另有明确说明。从而,除非另有明确说明,否则公开的每个特征只是一系列普通的相当或相似特征的一个例子。

Claims (19)

1.一种用于实现网络规则的方法,包括: 在通信网络的控制平面内,向虚拟网络交换机模块发送配置信号,所述配置信号在虚拟网络交换机模块定义第一网络规则; 配置分组转发模块,使得分组转发模块实现第二网络规则;和 经由控制平面,接收来自虚拟网络交换机模块的状态信息以及来自分组转发模块的状态信息,以及根据来自虚拟网络交换机模块的状态信息和/或来自分组转发模块的状态信息,向或从虚拟网络交换机模块和/或分组转发模块转移网络规则。
2.按照权利要求1所述的方法,其中所述接收在第一时间,并且所述配置信号是第一配置信号,所述方法还包括: 在第一时间之后的第二时间,接收第三网络规则;和 在第二时间之后的第三时间,向虚拟网络交换机模块发送第二配置信号,所述第二配置信号在虚拟网络交换机模块定义第三网络规则。
3.按照权利要求1所述的方法,其中所述接收在第一时间,并且所述配置信号是第一配置信号,所述方法还包括: 在第一时间之后的第二时间,响应于来自虚拟网络交换机模块的状态信息或来自分组转发模块的状态信息至少其中之一,向虚拟网络交换机模块发送第二配置信号,所述第二配置信号在虚拟网络交换机模块定义第三网络规则。
4.按照权利要求1所述的方法,其中所述配置信号包括用于改变保存在与虚拟网络交换机模块相关联的存储器处的数据值的指令。`
5.按照权利要求1所述的方法,还包括: 在所述发送之前,接收包括第一网络规则的描述和第二网络规则的描述的配置文件。
6.按照权利要求1所述的方法,还包括: 在通信网络的数据平面内,从虚拟网络交换机模块接收数据分组;和 响应于从虚拟网络交换机模块收到数据分组,在通信网络的控制平面内,向虚拟网络交换机模块发送第二配置信号,所述第二配置信号在虚拟网络交换机模块定义第三网络规则。
7.按照权利要求1所述的方法,其中: 虚拟网络交换机模块是托管于第一计算装置的第一虚拟网络交换机模块;和 所述分组转发模块是托管于第二计算装置的第二虚拟网络交换机模块。
8.按照权利要求1所述的方法,其中所述通信网络是多级交换机架构。
9.一种用于实现网络规则的设备,包括: 分组转发模块,用于根据在分组转发模块定义的多个网络规则转发数据分组;和 操作地与所述分组转发模块耦接的处理器,所述处理器通过分组转发模块与托管于第一计算装置的第一虚拟网络交换机模块以及托管于第二计算装置的第二虚拟网络交换机模块通信,所述处理器被配置为配置第一虚拟网络交换机模块,以对在第一虚拟网络交换机模块处接收的数据分组应用第一网络规则,所述处理器被配置为配置第二虚拟网络交换机模块,以对在第二虚拟网络交换机模块处接收的数据分组应用第二网络规则,以及所述处理器被配置为接收来自第一虚拟网络交换机模块的状态信息和来自第二虚拟网络交换机模块的状态信息,并且根据来自第一虚拟网络交换机模块的状态信息和/或来自第二虚拟网络交换机模块的状态信息,向或从第一虚拟网络交换机模块、第二虚拟网络交换机模块和/或分组转发模块转移网络规则。
10.按照权利要求9所述的设备,其中,所述分组转发模块包括进行数据分组分类的专用集成电路。
11.按照权利要求9所述的设备,其中,所述处理器接收来自第一虚拟网络交换机模块的协议分组和来自第二虚拟网络交换机模块的协议分组。
12.按照权利要求9所述的设备,其中,所述处理器接收来自第一虚拟网络交换机模块的异常分组和来自第二虚拟网络交换机模块的异常分组。
13.按照权利要求9所述的设备,其中: 所述处理器确定与分组转发模块相关联的利用率值;和 所述处理器从在分组转发模块处定义的多个网络规则中除去第三网络规则,并配置第一虚拟网络交换机模块以对在第一虚拟网络交换机模块处接收的数据分组应用第三网络规则。
14.按照权利要求9所述的设备,其中,第一网络规则和第二网络规则是相同的网络规则。
15.按照权利要求9所述的设备,其中,所述处理器在分组转发模块定义多个网络规则。
16.一种用于实现网络规则的方法,包括: 在通信网络的控制平面内,从接入交换机接收配置信号,从而在虚拟网络交换机模块定义网络规则; 根据所述网络规则在虚拟网络交换机模块处处理数据分组;和在控制平面内,向接入交换机发送与虚拟网络交换机模块相关联的状态信息,其中,接入交换机根据与虚拟网络交换机模块相关联的状态信息,向或从虚拟网络交换机模块转移网络规则。
17.按照权利要求16所述的方法,其中,所述配置信号是第一配置信号,所述数据分组是第一数据分组,并且所述网络规则是第一网络规则,所述方法还包括: 在虚拟网络交换机模块接收第二数据分组; 确定第一网络规则与第二数据分组无关; 在通信网络的数据平面内,向接入交换机发送第二数据分组;和 从接入交换机接收第二配置信号,以在虚拟网络交换机模块定义第二网络规则。
18.按照权利要求16所述的方法,其中,所述配置信号包括改变保存在与虚拟网络交换机模块相关联的存储器处的数据值的指令。
19.按照权利要求16所述的方法,其中,所述数据分组是第一数据分组,所述方法还包括: 在虚拟网络交换机模块接收第二数据分组; 确定与所述网络规则相关联的处理持续时间;和 在通信网络的数据平面内,将所述第二数据分组发送给接入交换机。
CN201010284384.6A 2009-11-04 2010-09-14 用于实现网络规则的方法和设备 CN102055667B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US12/612,210 2009-11-04
US12/612,210 US8442048B2 (en) 2009-11-04 2009-11-04 Methods and apparatus for configuring a virtual network switch

Publications (2)

Publication Number Publication Date
CN102055667A CN102055667A (zh) 2011-05-11
CN102055667B true CN102055667B (zh) 2014-05-14

Family

ID=43587296

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201010284384.6A CN102055667B (zh) 2009-11-04 2010-09-14 用于实现网络规则的方法和设备

Country Status (3)

Country Link
US (3) US8442048B2 (zh)
EP (2) EP2330781B1 (zh)
CN (1) CN102055667B (zh)

Families Citing this family (160)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8363658B1 (en) 2008-11-13 2013-01-29 Sprint Communications Company L.P. Dynamic firewall and dynamic host configuration protocol configuration
US8479266B1 (en) 2008-11-13 2013-07-02 Sprint Communications Company L.P. Network assignment appeal architecture and process
US8341717B1 (en) * 2008-11-13 2012-12-25 Sprint Communications Company L.P. Dynamic network policies based on device classification
US8255496B2 (en) 2008-12-30 2012-08-28 Juniper Networks, Inc. Method and apparatus for determining a network topology during network provisioning
US8054832B1 (en) 2008-12-30 2011-11-08 Juniper Networks, Inc. Methods and apparatus for routing between virtual resources based on a routing location policy
US8565118B2 (en) * 2008-12-30 2013-10-22 Juniper Networks, Inc. Methods and apparatus for distributed dynamic network provisioning
US8331362B2 (en) * 2008-12-30 2012-12-11 Juniper Networks, Inc. Methods and apparatus for distributed dynamic network provisioning
US8190769B1 (en) 2008-12-30 2012-05-29 Juniper Networks, Inc. Methods and apparatus for provisioning at a network device in response to a virtual resource migration notification
US8953603B2 (en) 2009-10-28 2015-02-10 Juniper Networks, Inc. Methods and apparatus related to a distributed switch fabric
US8442048B2 (en) 2009-11-04 2013-05-14 Juniper Networks, Inc. Methods and apparatus for configuring a virtual network switch
US9203747B1 (en) * 2009-12-07 2015-12-01 Amazon Technologies, Inc. Providing virtual networking device functionality for managed computer networks
JP5506444B2 (ja) * 2010-02-18 2014-05-28 株式会社日立製作所 情報システム、装置および方法
BR112012021765A2 (pt) * 2010-03-17 2016-05-10 Nec Corp sistema de comunicação, nó, servidor de controle, método de comunicação e programa
EP2561645A4 (en) 2010-04-23 2015-11-04 Net Optics Inc Integrated network data collection arrangement and methods thereof
US8767752B1 (en) 2010-05-03 2014-07-01 Pluribus Networks, Inc. Method and system for resource coherency and analysis in a network
US9306849B2 (en) 2010-05-03 2016-04-05 Pluribus Networks, Inc. Methods and systems for managing distribute media access control address tables
US9300576B2 (en) 2010-05-03 2016-03-29 Pluribus Networks Inc. Methods, systems, and fabrics implementing a distributed network operating system
US9154445B2 (en) * 2010-05-03 2015-10-06 Pluribus Networks Inc. Servers, switches, and systems with virtual interface to external network connecting hardware and integrated networking driver
US9160668B2 (en) * 2010-05-03 2015-10-13 Pluribus Networks Inc. Servers, switches, and systems with switching module implementing a distributed network operating system
US9304782B2 (en) 2010-05-03 2016-04-05 Pluribus Networks, Inc. Network switch, systems, and servers implementing boot image delivery
US9525647B2 (en) 2010-07-06 2016-12-20 Nicira, Inc. Network control apparatus and method for creating and modifying logical switching elements
US10103939B2 (en) 2010-07-06 2018-10-16 Nicira, Inc. Network control apparatus and method for populating logical datapath sets
US8837493B2 (en) 2010-07-06 2014-09-16 Nicira, Inc. Distributed network control apparatus and method
US9319335B1 (en) 2010-12-07 2016-04-19 Pluribus Networks, Inc. Distributed operating system for a layer 2 fabric
US8891406B1 (en) 2010-12-22 2014-11-18 Juniper Networks, Inc. Methods and apparatus for tunnel management within a data center
US8891543B1 (en) * 2011-05-23 2014-11-18 Pluribus Networks Inc. Method and system for processing packets in a network device
DE112012002404B4 (de) * 2011-06-07 2017-03-02 International Business Machines Corporation Konfiguration und Management virtueller Netzwerke
US8516241B2 (en) * 2011-07-12 2013-08-20 Cisco Technology, Inc. Zone-based firewall policy model for a virtualized data center
ES2567726T3 (es) * 2011-08-01 2016-04-26 Huawei Technologies Co., Ltd. Método de configuración de política de red, dispositivo de gestión y dispositivo de centro de gestión de red
US8660124B2 (en) 2011-08-05 2014-02-25 International Business Machines Corporation Distributed overlay network data traffic management by a virtual server
US20130034094A1 (en) * 2011-08-05 2013-02-07 International Business Machines Corporation Virtual Switch Data Control In A Distributed Overlay Network
US8958298B2 (en) 2011-08-17 2015-02-17 Nicira, Inc. Centralized logical L3 routing
US8954782B2 (en) 2011-08-24 2015-02-10 Dell Products, Lp System and method for an integrated open network switch
CN103051510B (zh) * 2011-09-07 2016-04-13 微软技术许可有限责任公司 网络策略向网络接口卡的安全和高效卸载的方法和装置
US9185056B2 (en) 2011-09-20 2015-11-10 Big Switch Networks, Inc. System and methods for controlling network traffic through virtual switches
US8964601B2 (en) * 2011-10-07 2015-02-24 International Business Machines Corporation Network switching domains with a virtualized control plane
US8782128B2 (en) 2011-10-18 2014-07-15 International Business Machines Corporation Global queue pair management in a point-to-point computer network
US9083651B2 (en) * 2011-12-07 2015-07-14 Citrix Systems, Inc. Controlling a network interface using virtual switch proxying
US9088477B2 (en) 2012-02-02 2015-07-21 International Business Machines Corporation Distributed fabric management protocol
US20130212237A1 (en) * 2012-02-10 2013-08-15 Suhas SHIVANNA Proxy infrastructure to access firmware-based features
US8640239B2 (en) * 2012-02-20 2014-01-28 International Business Machines Corporation Network intrusion detection in a network that includes a distributed virtual switch fabric
US9559948B2 (en) * 2012-02-29 2017-01-31 Dell Products, Lp System and method for managing unknown flows in a flow-based switching device
US20130223226A1 (en) * 2012-02-29 2013-08-29 Dell Products, Lp System and Method for Providing a Split Data Plane in a Flow-Based Switching Device
US9077624B2 (en) 2012-03-07 2015-07-07 International Business Machines Corporation Diagnostics in a distributed fabric system
US9077651B2 (en) 2012-03-07 2015-07-07 International Business Machines Corporation Management of a distributed fabric system
CN102594707A (zh) * 2012-03-21 2012-07-18 北京天地云箱科技有限公司 网络控制系统及网络交换适配器
TWI458314B (zh) * 2012-03-22 2014-10-21 Wistron Corp 傳送遠端封包至主機的伺服器系統及其管理方法
EP2748993B1 (en) 2012-04-18 2015-09-02 Nicira Inc. Using transactions to compute and propagate network forwarding state
US20130318280A1 (en) 2012-05-22 2013-11-28 Xockets IP, LLC Offloading of computation for rack level servers and corresponding methods and systems
US9665503B2 (en) 2012-05-22 2017-05-30 Xockets, Inc. Efficient packet handling, redirection, and inspection using offload processors
US8953584B1 (en) * 2012-06-05 2015-02-10 Juniper Networks, Inc. Methods and apparatus for accessing route information in a distributed switch
US9374270B2 (en) 2012-06-06 2016-06-21 Juniper Networks, Inc. Multicast service in virtual networks
US9064216B2 (en) * 2012-06-06 2015-06-23 Juniper Networks, Inc. Identifying likely faulty components in a distributed system
US9898317B2 (en) 2012-06-06 2018-02-20 Juniper Networks, Inc. Physical path determination for virtual network packet flows
CN103516628B (zh) * 2012-06-25 2016-12-21 华为技术有限公司 一种实现网络策略更新的方法、装置及系统
US9059868B2 (en) 2012-06-28 2015-06-16 Dell Products, Lp System and method for associating VLANs with virtual switch ports
US20140012962A1 (en) * 2012-07-02 2014-01-09 Datacom Systems, Inc. Preconfigured filters, dynamic updates and cloud based configurations in a network access switch
US9231892B2 (en) * 2012-07-09 2016-01-05 Vmware, Inc. Distributed virtual switch configuration and state management
CN102752215B (zh) * 2012-07-16 2015-03-11 杭州华三通信技术有限公司 一种vdp请求报文的处理方法和边缘交换机
US9331940B2 (en) 2012-08-28 2016-05-03 Alcatel Lucent System and method providing distributed virtual routing and switching (DVRS)
US9258266B2 (en) * 2012-08-30 2016-02-09 Cisco Technology, Inc. Host detection by top of rack switch devices in data center environments
US9313096B2 (en) 2012-12-04 2016-04-12 International Business Machines Corporation Object oriented networks
CN104040964B (zh) * 2012-12-06 2017-06-20 华为技术有限公司 跨服务区通信的方法、装置和数据中心网络
CN103563304B (zh) * 2012-12-18 2016-05-25 华为技术有限公司 基于虚拟组网的交换机配置方法及集群管理设备
US9253117B1 (en) * 2012-12-18 2016-02-02 Google Inc. Systems and methods for reducing network hardware of a centrally-controlled network using in-band network connections
US10135732B2 (en) 2012-12-31 2018-11-20 Juniper Networks, Inc. Remotely updating routing tables
US8954535B2 (en) * 2012-12-31 2015-02-10 Juniper Networks, Inc. Dynamic network device processing using external components
US20140201408A1 (en) * 2013-01-17 2014-07-17 Xockets IP, LLC Offload processor modules for connection to system memory, and corresponding methods and systems
JPWO2014112616A1 (ja) * 2013-01-21 2017-01-19 日本電気株式会社 制御装置、通信装置、通信システム、スイッチの制御方法及びプログラム
US8897138B2 (en) * 2013-01-22 2014-11-25 Gigamon Inc. Systems and methods for configuring a network switch appliance
US9755900B2 (en) 2013-03-11 2017-09-05 Amazon Technologies, Inc. Managing configuration updates
US10313180B2 (en) * 2013-03-13 2019-06-04 Dell Products L.P. Systems and methods for managing switching devices in an information handling system
US9571338B2 (en) * 2013-03-14 2017-02-14 Lenovo Enterprise Solutions (Singapore) Pte. Ltd. Scalable distributed control plane for network switching systems
US9794379B2 (en) 2013-04-26 2017-10-17 Cisco Technology, Inc. High-efficiency service chaining with agentless service nodes
CN103220235B (zh) * 2013-04-26 2017-03-15 华为技术有限公司 分布式虚拟交换机的管理方法和相关装置及系统
US9432215B2 (en) 2013-05-21 2016-08-30 Nicira, Inc. Hierarchical network managers
KR20150000160A (ko) * 2013-06-24 2015-01-02 한국전자통신연구원 분산 가상 스위치를 이용한 네트워크 구현 방법, 이를 수행하는 네트워크 장치 및 분산 가상 스위치 기반 네트워크 시스템
US10218564B2 (en) 2013-07-08 2019-02-26 Nicira, Inc. Unified replication mechanism for fault-tolerance of state
US9602312B2 (en) 2013-07-08 2017-03-21 Nicira, Inc. Storing network state at a network controller
US9973382B2 (en) 2013-08-15 2018-05-15 Nicira, Inc. Hitless upgrade for network control applications
US10033693B2 (en) 2013-10-01 2018-07-24 Nicira, Inc. Distributed identity-based firewalls
JP2015076643A (ja) * 2013-10-04 2015-04-20 富士通株式会社 制御プログラム、制御装置および制御方法
US10148484B2 (en) 2013-10-10 2018-12-04 Nicira, Inc. Host side method of using a controller assignment list
US9785455B2 (en) 2013-10-13 2017-10-10 Nicira, Inc. Logical router
US9634948B2 (en) * 2013-11-07 2017-04-25 International Business Machines Corporation Management of addresses in virtual machines
WO2015074258A1 (zh) * 2013-11-22 2015-05-28 华为技术有限公司 一种控制业务数据在虚拟网络中转发的方法、装置及系统
KR20150071533A (ko) * 2013-12-18 2015-06-26 삼성전자주식회사 가상 스위칭 방법 및 장치
US9215214B2 (en) 2014-02-20 2015-12-15 Nicira, Inc. Provisioning firewall rules on a firewall enforcing device
US9313129B2 (en) 2014-03-14 2016-04-12 Nicira, Inc. Logical router processing by network controller
US9419855B2 (en) 2014-03-14 2016-08-16 Nicira, Inc. Static routes for logical routers
US9647883B2 (en) 2014-03-21 2017-05-09 Nicria, Inc. Multiple levels of logical routers
US9503321B2 (en) 2014-03-21 2016-11-22 Nicira, Inc. Dynamic routing for logical routers
US9503427B2 (en) 2014-03-31 2016-11-22 Nicira, Inc. Method and apparatus for integrating a service virtual machine
US9479457B2 (en) 2014-03-31 2016-10-25 Juniper Networks, Inc. High-performance, scalable and drop-free data center switch fabric
US9215210B2 (en) 2014-03-31 2015-12-15 Nicira, Inc. Migrating firewall connection state for a firewall service virtual machine
US9906494B2 (en) 2014-03-31 2018-02-27 Nicira, Inc. Configuring interactions with a firewall service virtual machine
US20150319250A1 (en) * 2014-04-30 2015-11-05 Anil Vasudevan Technologies for accelerating network virtualization
US9967150B2 (en) 2014-04-30 2018-05-08 Keysight Technologies Singapore (Holdings) Pte. Ltd. Methods and apparatuses for implementing network visibility infrastructure
US9602422B2 (en) 2014-05-05 2017-03-21 Nicira, Inc. Implementing fixed points in network state updates using generation numbers
RU2609086C2 (ru) * 2014-05-07 2017-01-30 Общество С Ограниченной Ответственностью "Яндекс" Сетевое устройство пересылки пакетов (варианты), способ настройки сетевого устройства пересылки пакетов (варианты) и способ пересылки пакета
US9825913B2 (en) 2014-06-04 2017-11-21 Nicira, Inc. Use of stateless marking to speed up stateful firewall rule processing
US9729512B2 (en) 2014-06-04 2017-08-08 Nicira, Inc. Use of stateless marking to speed up stateful firewall rule processing
CN106797348A (zh) * 2014-08-14 2017-05-31 诺基亚通信公司 基于用户平面洞察力的吞吐量指导
US10158530B2 (en) 2014-08-18 2018-12-18 Advanced Micro Devices, Inc. Configuration of a cluster server using cellular automata
US9875127B2 (en) * 2014-08-22 2018-01-23 Nicira, Inc. Enabling uniform switch management in virtual infrastructure
US10003495B1 (en) * 2014-09-20 2018-06-19 Cisco Technology, Inc. Discovery protocol for enabling automatic bootstrap and communication with a service appliance connected to a network switch
US9459903B2 (en) * 2014-09-24 2016-10-04 Intel Corporation Techniques for routing service chain flow packets between virtual machines
US10250443B2 (en) 2014-09-30 2019-04-02 Nicira, Inc. Using physical location to modify behavior of a distributed virtual network element
US10511458B2 (en) 2014-09-30 2019-12-17 Nicira, Inc. Virtual distributed bridging
US10270658B2 (en) 2014-09-30 2019-04-23 Cisco Technology, Inc. Zero touch configuration and synchronization of a service appliance in a network environment
US9838337B1 (en) * 2014-09-30 2017-12-05 Juniper Networks, Inc. Automatic virtual local area network (VLAN) provisioning in data center switches
US10417025B2 (en) 2014-11-18 2019-09-17 Cisco Technology, Inc. System and method to chain distributed applications in a network environment
US9692727B2 (en) 2014-12-02 2017-06-27 Nicira, Inc. Context-aware distributed firewall
US9660909B2 (en) 2014-12-11 2017-05-23 Cisco Technology, Inc. Network service header metadata for load balancing
US10229230B2 (en) * 2015-01-06 2019-03-12 International Business Machines Corporation Simulating a large network load
US10129180B2 (en) 2015-01-30 2018-11-13 Nicira, Inc. Transit logical switch within logical router
US9923760B2 (en) 2015-04-06 2018-03-20 Nicira, Inc. Reduction of churn in a network control system
US10374904B2 (en) 2015-05-15 2019-08-06 Cisco Technology, Inc. Diagnostic network visualization
CN104954261B (zh) * 2015-05-26 2018-01-16 上海斐讯数据通信技术有限公司 利用流表转发数据的方法及系统
US10536357B2 (en) 2015-06-05 2020-01-14 Cisco Technology, Inc. Late data detection in data center
US10142353B2 (en) 2015-06-05 2018-11-27 Cisco Technology, Inc. System for monitoring and managing datacenters
US10348625B2 (en) 2015-06-30 2019-07-09 Nicira, Inc. Sharing common L2 segment in a virtual distributed router environment
US9680706B2 (en) 2015-06-30 2017-06-13 Nicira, Inc. Federated firewall management for moving workload across data centers
US10230629B2 (en) 2015-08-11 2019-03-12 Nicira, Inc. Static route configuration for logical router
US9794222B2 (en) * 2015-08-28 2017-10-17 Nicira, Inc. Stateful processing for stateless forwarding element
US9894188B2 (en) 2015-08-28 2018-02-13 Nicira, Inc. Packet data restoration for flow-based forwarding element
US10075363B2 (en) 2015-08-31 2018-09-11 Nicira, Inc. Authorization for advertised routes among logical routers
US10204122B2 (en) 2015-09-30 2019-02-12 Nicira, Inc. Implementing an interface between tuple and message-driven control entities
US10095535B2 (en) 2015-10-31 2018-10-09 Nicira, Inc. Static route types for logical routers
US10191877B2 (en) * 2015-12-22 2019-01-29 Intel Corporation Architecture for software defined interconnect switch
US10187306B2 (en) 2016-03-24 2019-01-22 Cisco Technology, Inc. System and method for improved service chaining
US10348685B2 (en) 2016-04-29 2019-07-09 Nicira, Inc. Priority allocation for distributed service rules
US10135727B2 (en) 2016-04-29 2018-11-20 Nicira, Inc. Address grouping for distributed service rules
US10289438B2 (en) 2016-06-16 2019-05-14 Cisco Technology, Inc. Techniques for coordination of application components deployed on distributed virtual machines
US10153973B2 (en) 2016-06-29 2018-12-11 Nicira, Inc. Installation of routing tables for logical router in route server mode
US10419550B2 (en) 2016-07-06 2019-09-17 Cisco Technology, Inc. Automatic service function validation in a virtual network environment
US10218616B2 (en) 2016-07-21 2019-02-26 Cisco Technology, Inc. Link selection for communication with a service function cluster
US10320664B2 (en) 2016-07-21 2019-06-11 Cisco Technology, Inc. Cloud overlay for operations administration and management
US10225270B2 (en) * 2016-08-02 2019-03-05 Cisco Technology, Inc. Steering of cloned traffic in a service function chain
US10218593B2 (en) 2016-08-23 2019-02-26 Cisco Technology, Inc. Identifying sources of packet drops in a service function chain environment
US9762619B1 (en) 2016-08-30 2017-09-12 Nicira, Inc. Multi-layer policy definition and enforcement framework for network virtualization
US10454758B2 (en) 2016-08-31 2019-10-22 Nicira, Inc. Edge node cluster network redundancy and fast convergence using an underlay anycast VTEP IP
US10038622B2 (en) * 2016-09-29 2018-07-31 Nicira, Inc. Inline processing of learn actions in a virtual switch
US10341236B2 (en) 2016-09-30 2019-07-02 Nicira, Inc. Anycast edge service gateways
US20180115457A1 (en) * 2016-10-26 2018-04-26 Nebbiolo Technologies Inc. High availability input/output management nodes
CN107278362B (zh) * 2016-11-09 2019-04-05 华为技术有限公司 云计算系统中报文处理的方法、主机和系统
US10193862B2 (en) 2016-11-29 2019-01-29 Vmware, Inc. Security policy analysis based on detecting new network port connections
US10530712B2 (en) * 2016-12-09 2020-01-07 Cisco Technology, Inc. Handling reflexive ACLs with virtual port-channel
US10503536B2 (en) 2016-12-22 2019-12-10 Nicira, Inc. Collecting and storing threat level indicators for service rule processing
CN108462594A (zh) * 2017-02-21 2018-08-28 阿里巴巴集团控股有限公司 虚拟专有网络及规则表生成方法、装置及路由方法
US10243840B2 (en) 2017-03-01 2019-03-26 Juniper Networks, Inc. Network interface card switching for virtual networks
US10225187B2 (en) 2017-03-22 2019-03-05 Cisco Technology, Inc. System and method for providing a bit indexed service chain
US10523512B2 (en) 2017-03-24 2019-12-31 Cisco Technology, Inc. Network agent for generating platform specific network policies
US10250446B2 (en) 2017-03-27 2019-04-02 Cisco Technology, Inc. Distributed policy store
US10491520B2 (en) * 2017-04-06 2019-11-26 Ca, Inc. Container-based software appliance
US10333855B2 (en) 2017-04-19 2019-06-25 Cisco Technology, Inc. Latency reduction in service function paths
US10397271B2 (en) 2017-07-11 2019-08-27 Cisco Technology, Inc. Distributed denial of service mitigation for web conferencing
US10523541B2 (en) 2017-10-25 2019-12-31 Cisco Technology, Inc. Federated network and application data analytics platform
US10511459B2 (en) 2017-11-14 2019-12-17 Nicira, Inc. Selection of managed forwarding element for bridge spanning multiple datacenters
US10374827B2 (en) 2017-11-14 2019-08-06 Nicira, Inc. Identifier that maps to different networks at different datacenters

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101351784A (zh) * 2005-12-30 2009-01-21 阿西式·A·潘迪亚 运行时自适应搜索处理器

Family Cites Families (138)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2569118B2 (ja) 1987-07-15 1997-01-08 株式会社日立製作所 スイッチングシステム及びその構成方法
US5138615A (en) 1989-06-22 1992-08-11 Digital Equipment Corporation Reconfiguration system and method for high-speed mesh connected local area network
US5130984A (en) 1990-12-18 1992-07-14 Bell Communications Research, Inc. Large fault tolerant packet switch particularly suited for asynchronous transfer mode (ATM) communication
US5801641A (en) 1993-10-19 1998-09-01 The Johns Hopkins University Controller for a non-blocking broadcast network
US6011779A (en) 1996-12-30 2000-01-04 Hyundai Electronics America ATM switch queuing system
US6073089A (en) 1997-10-22 2000-06-06 Baker; Michelle Systems and methods for adaptive profiling, fault detection, and alert generation in a changing environment which is measurable by at least two different measures of state
US7430164B2 (en) 1998-05-04 2008-09-30 Hewlett-Packard Development Company, L.P. Path recovery on failure in load balancing switch protocols
US6421711B1 (en) 1998-06-29 2002-07-16 Emc Corporation Virtual ports for data transferring of a data storage system
US6189044B1 (en) * 1998-10-14 2001-02-13 Hughes Electronics Corporation Dynamic routing method for packet switched satellite communications
US6522627B1 (en) 1998-11-12 2003-02-18 Nortel Networks Limited Managing internet protocol connection oriented services
US6807172B1 (en) 1999-12-21 2004-10-19 Cisco Technology, Inc. Method and apparatus for learning and switching frames in a distributed network switch
US6594261B1 (en) * 1999-12-22 2003-07-15 Aztech Partners, Inc. Adaptive fault-tolerant switching network with random initial routing and random routing around faults
GB2361139B (en) 2000-04-04 2003-07-09 3Com Corp Flow control system for ethernet network devices
US6675163B1 (en) 2000-04-06 2004-01-06 International Business Machines Corporation Full match (FM) search algorithm implementation for a network processor
US6657962B1 (en) 2000-04-10 2003-12-02 International Business Machines Corporation Method and system for managing congestion in a network
US6985486B1 (en) 2000-07-14 2006-01-10 Intel Corporation Shared buffer asynchronous transfer mode switch
US6775230B1 (en) 2000-07-18 2004-08-10 Hitachi, Ltd. Apparatus and method for transmitting frames via a switch in a storage area network
AU8863101A (en) 2000-09-01 2002-03-13 Tut Systems Inc A method and system to implement policy-based network traffic management
US7389358B1 (en) 2000-09-13 2008-06-17 Fortinet, Inc. Distributed virtual system to support managed, network-based services
US7027412B2 (en) 2000-11-10 2006-04-11 Veritas Operating Corporation System for dynamic provisioning of secure, scalable, and extensible networked computer environments
US6973032B1 (en) 2000-12-04 2005-12-06 Cisco Technology, Inc. Selective backpressure control for multistage switches
US20070244997A1 (en) 2005-08-31 2007-10-18 Tindal Glen D System and method for configuring a network device
US7075934B2 (en) 2001-01-10 2006-07-11 Lucent Technologies Inc. Method and apparatus for hierarchical bandwidth distribution in a packet network
US6633548B2 (en) 2001-01-30 2003-10-14 Nokia Intelligent Edge Routers Inc. Method and apparatus for ternary content addressable memory (TCAM) table management
US6635555B2 (en) * 2001-02-28 2003-10-21 Sharp Laboratories Of America, Inc. Method of controlling crystallographic orientation in laser-annealed polycrystalline silicon films
US6970902B1 (en) 2001-05-24 2005-11-29 Cisco Technology, Inc. Method and apparatus for providing a distributed service in a network
US7305492B2 (en) 2001-07-06 2007-12-04 Juniper Networks, Inc. Content service aggregation system
US7283556B2 (en) 2001-07-31 2007-10-16 Nishan Systems, Inc. Method and system for managing time division multiplexing (TDM) timeslots in a network switch
US7106967B2 (en) 2001-09-04 2006-09-12 Doron Handelman Optical packet switching apparatus and methods
US7099275B2 (en) * 2001-09-21 2006-08-29 Slt Logic Llc Programmable multi-service queue scheduler
US6574701B2 (en) 2001-09-27 2003-06-03 Coriolis Networks, Inc. Technique for updating a content addressable memory
US7313135B2 (en) 2002-01-31 2007-12-25 Mosaid Technologies, Inc. Trunking in a matrix
US7406038B1 (en) 2002-04-05 2008-07-29 Ciphermax, Incorporated System and method for expansion of computer network switching system without disruption thereof
US7221676B2 (en) 2002-07-30 2007-05-22 Brocade Communications Systems, Inc. Supporting local IB packet communication between separate subnets
US20070005685A1 (en) 2002-09-16 2007-01-04 Wunchun Chau Browser-based payment system
US7327680B1 (en) 2002-11-05 2008-02-05 Cisco Technology, Inc. Methods and apparatus for network congestion control
US7657653B2 (en) * 2002-12-17 2010-02-02 Fujitsu Limited Load decentralization method and apparatus thereof
US8401024B2 (en) 2004-01-14 2013-03-19 Telefonaktiebolaget Lm Ericsson (Publ) Ethernet address management system
US7069413B1 (en) 2003-01-29 2006-06-27 Vmware, Inc. Method and system for performing virtual to physical address translations in a virtual machine monitor
US7606239B2 (en) 2003-01-31 2009-10-20 Brocade Communications Systems, Inc. Method and apparatus for providing virtual ports with attached virtual devices in a storage area network
US20040177157A1 (en) 2003-02-13 2004-09-09 Nortel Networks Limited Logical grouping of VPN tunnels
US7010633B2 (en) 2003-04-10 2006-03-07 International Business Machines Corporation Apparatus, system and method for controlling access to facilities based on usage classes
US7631055B1 (en) 2003-04-23 2009-12-08 Cisco Technology, Inc. Method and apparatus providing automatic connection announcement from a modular network device to a network management point
US7409487B1 (en) 2003-06-30 2008-08-05 Vmware, Inc. Virtualization system for computers that use address space indentifiers
US7369561B2 (en) 2003-07-17 2008-05-06 Samsung Electronics Co., Ltd. Apparatus and method for route summarization and distribution in a massively parallel router
US7085838B2 (en) 2003-08-04 2006-08-01 Sbc Knowledge Ventures, Lp Communications system for identifying remote digital subscriber line (DSL) customer premises equipment (CPE) devices during a discovery phase
JP4282464B2 (ja) 2003-12-17 2009-06-24 株式会社日立製作所 リモートコピーシステム
US20050198362A1 (en) * 2003-12-31 2005-09-08 Navada Muraleedhara H. Exception packet forwarding
US20050198303A1 (en) 2004-01-02 2005-09-08 Robert Knauerhase Dynamic virtual machine service provider allocation
JP2005216151A (ja) 2004-01-30 2005-08-11 Hitachi Ltd 資源運用管理システム及び資源運用管理方法
US7428219B2 (en) 2004-02-27 2008-09-23 Intel Corporation System and method to exchange information between a control element and forwarding elements in a network element architecture
US7441268B2 (en) 2004-06-08 2008-10-21 Alwyn Dos Remedios Method and apparatus to manage exceptions in network processors
US20060069774A1 (en) 2004-06-17 2006-03-30 International Business Machine Corporation Method and apparatus for managing data center using Web services
GB2418326B (en) 2004-09-17 2007-04-11 Hewlett Packard Development Co Network vitrualization
US7689747B2 (en) 2005-03-28 2010-03-30 Microsoft Corporation Systems and methods for an augmented interrupt controller and synthetic interrupt sources
US7415034B2 (en) 2005-04-04 2008-08-19 Sun Microsystems, Inc. Virtualized partitionable shared network interface
US7580415B2 (en) 2005-04-27 2009-08-25 Hewlett-Packard Development Company, L.P. Aggregation of hybrid network resources operable to support both offloaded and non-offloaded connections
US20060259952A1 (en) 2005-05-16 2006-11-16 Simon Lok Unified roaming profile network provisioning system
US8751649B2 (en) 2005-06-07 2014-06-10 Extreme Networks Port management system
US20070008949A1 (en) 2005-07-07 2007-01-11 Nokia Corporation Method for automatic route aggregation in a communication system
KR100877137B1 (ko) 2005-07-14 2009-01-07 삼성전자주식회사 광대역 무선통신시스템에서 일대일 에뮬레이션 장치 및방법
US8949364B2 (en) 2005-09-15 2015-02-03 Ca, Inc. Apparatus, method and system for rapid delivery of distributed applications
US20070079307A1 (en) 2005-09-30 2007-04-05 Puneet Dhawan Virtual machine based network carriers
US20070140235A1 (en) 2005-12-21 2007-06-21 Nortel Networks Limited Network visible inter-logical router links
US7500134B2 (en) 2005-12-27 2009-03-03 Emc Corporation Virtual array failover
US7821981B2 (en) * 2005-12-27 2010-10-26 Cisco Technology, Inc. Satellite switch communication over a network
US7788665B2 (en) 2006-02-28 2010-08-31 Microsoft Corporation Migrating a virtual machine that owns a resource such as a hardware device
US8169903B2 (en) 2006-03-07 2012-05-01 Cisco Technology, Inc. Managing traffic within and between virtual private networks when using a session border controller
JP2007251348A (ja) 2006-03-14 2007-09-27 Toshiba Corp コンテンツ復号化装置
US7764675B2 (en) 2006-05-30 2010-07-27 Intel Corporation Peer-to-peer connection between switch fabric endpoint nodes
US7706303B2 (en) 2006-06-26 2010-04-27 Cisco Technology, Inc. Port pooling
US7757059B1 (en) 2006-06-29 2010-07-13 Emc Corporation Virtual array non-disruptive management data migration
US20080005344A1 (en) 2006-06-29 2008-01-03 Ford Daniel E Method and system for configuring a network device using a template
US7630368B2 (en) 2006-06-30 2009-12-08 Sun Microsystems, Inc. Virtual network interface card loopback fastpath
US7836212B2 (en) 2006-07-20 2010-11-16 Oracle America, Inc. Reflecting bandwidth and priority in network attached storage I/O
US8005022B2 (en) 2006-07-20 2011-08-23 Oracle America, Inc. Host operating system bypass for packets destined for a virtual machine
US8713202B2 (en) 2006-07-20 2014-04-29 Oracle America, Inc. Method and system for network configuration for virtual machines
US8095675B2 (en) 2006-07-20 2012-01-10 Oracle America, Inc. Priority and bandwidth specification at mount time of NAS device volume
US7788411B2 (en) 2006-07-20 2010-08-31 Oracle America, Inc. Method and system for automatically reflecting hardware resource allocation modifications
US8732279B2 (en) 2006-08-18 2014-05-20 Cisco Technology, Inc. Secure network deployment
US8161475B2 (en) 2006-09-29 2012-04-17 Microsoft Corporation Automatic load and balancing for virtual machines to meet resource requirements
US7793101B2 (en) 2006-10-19 2010-09-07 Novell, Inc. Verifiable virtualized storage port assignments for virtual machines
US20080095361A1 (en) 2006-10-19 2008-04-24 Telefonaktiebolaget L M Ericsson (Publ) Security-Enhanced Key Exchange
US8010990B2 (en) 2006-10-26 2011-08-30 Intel Corporation Acceleration of packet flow classification in a virtualized system
US7830882B2 (en) 2006-11-17 2010-11-09 Intel Corporation Switch scaling for virtualized network interface controllers
TWI324456B (en) 2006-12-01 2010-05-01 Cameo Communications Inc An intelligent automatic setting restoration method and device
US7738457B2 (en) 2006-12-20 2010-06-15 Oracle America, Inc. Method and system for virtual routing using containers
US7633864B2 (en) * 2006-12-20 2009-12-15 Sun Microsystems, Inc. Method and system for creating a demilitarized zone using network stack instances
US9189265B2 (en) 2006-12-21 2015-11-17 Vmware, Inc. Storage architecture for virtual machines
JP4851354B2 (ja) 2007-02-01 2012-01-11 アラクサラネットワークス株式会社 ネットワーク設定情報管理システム
US20080192648A1 (en) 2007-02-08 2008-08-14 Nuova Systems Method and system to create a virtual topology
IL189514A (en) 2007-02-14 2011-12-29 Marvell Israel Misl Ltd Logical bridging system and method
US9661112B2 (en) 2007-02-22 2017-05-23 International Business Machines Corporation System and methods for providing server virtualization assistance
US8208386B2 (en) 2007-03-05 2012-06-26 Hewlett-Packard Development Company, L.P. Discovery of network devices
US8171485B2 (en) 2007-03-26 2012-05-01 Credit Suisse Securities (Europe) Limited Method and system for managing virtual and real machines
US8055789B2 (en) 2007-03-27 2011-11-08 Amazon Technologies, Inc. Configuring intercommunications between computing nodes
US8479194B2 (en) 2007-04-25 2013-07-02 Microsoft Corporation Virtual machine migration
US20090013062A1 (en) 2007-07-06 2009-01-08 Mitel Networks Corporation Configuration of ip telephony and other systems
US7836332B2 (en) 2007-07-18 2010-11-16 Hitachi, Ltd. Method and apparatus for managing virtual ports on storage systems
US8239646B2 (en) 2007-07-31 2012-08-07 Vmware, Inc. Online virtual machine disk migration
US20090052461A1 (en) 2007-08-21 2009-02-26 Ibm Corporation Method and Apparatus for Fibre Channel Over Ethernet Data Packet Translation Via Look up Table Conversion Bridge in a Network System
US8798056B2 (en) 2007-09-24 2014-08-05 Intel Corporation Method and system for virtual port communications
US20090100506A1 (en) * 2007-10-11 2009-04-16 Steve Whang System and Method for Managing Network Flows Based on Policy Criteria
US8935701B2 (en) 2008-03-07 2015-01-13 Dell Software Inc. Unified management platform in a computer network
US8468230B2 (en) 2007-10-18 2013-06-18 Fujitsu Limited Method, apparatus and recording medium for migrating a virtual machine
JP2009104421A (ja) 2007-10-23 2009-05-14 Hitachi Ltd ストレージアクセス装置
JP5078555B2 (ja) 2007-10-31 2012-11-21 キヤノン株式会社 帳票作成システム、帳票作成方法、プログラム、記憶媒体
US7835304B2 (en) 2007-11-28 2010-11-16 Alcatel-Lucent Usa Inc. Method and apparatus for assigning IP addresses
US7962587B2 (en) 2007-12-10 2011-06-14 Oracle America, Inc. Method and system for enforcing resource constraints for virtual machines across migration
US8429133B2 (en) 2007-12-13 2013-04-23 Oracle International Corporation Partial key indexes
US7746250B2 (en) 2008-01-31 2010-06-29 Microsoft Corporation Message encoding/decoding using templated parameters
KR100998396B1 (ko) * 2008-03-20 2010-12-03 광주과학기술원 프레임 손실 은닉 방법, 프레임 손실 은닉 장치 및 음성송수신 장치
JP5164628B2 (ja) 2008-03-24 2013-03-21 株式会社日立製作所 ネットワークスイッチ装置、サーバシステム及びサーバシステムにおけるサーバ移送方法
US20110035494A1 (en) * 2008-04-15 2011-02-10 Blade Network Technologies Network virtualization for a virtualized server data center environment
US8201166B2 (en) 2008-04-30 2012-06-12 Hewlett-Packard Development Company, L.P. Virtualization platform configured with virtual connect control
US20090276774A1 (en) 2008-05-01 2009-11-05 Junji Kinoshita Access control for virtual machines in an information system
US8315158B2 (en) 2008-05-01 2012-11-20 Siemens Aktiengesellschaft Methods and apparatus for decentralized rapid recovery for Ethernet rings
US8195774B2 (en) 2008-05-23 2012-06-05 Vmware, Inc. Distributed virtual switch for virtualized computer systems
US8161479B2 (en) 2008-06-13 2012-04-17 Microsoft Corporation Synchronizing virtual machine and application life cycles
US8050256B1 (en) 2008-07-08 2011-11-01 Tilera Corporation Configuring routing in mesh networks
US8045546B1 (en) 2008-07-08 2011-10-25 Tilera Corporation Configuring routing in mesh networks
US8102781B2 (en) 2008-07-31 2012-01-24 Cisco Technology, Inc. Dynamic distribution of virtual machines in a communication network
US20100042719A1 (en) 2008-08-12 2010-02-18 Junji Kinoshita Content access to virtual machine resource
US8307422B2 (en) 2008-08-14 2012-11-06 Juniper Networks, Inc. Routing device having integrated MPLS-aware firewall
US8104409B2 (en) 2008-08-19 2012-01-31 Bradken Resources Pty Limited Rail car suspension damping
US9842004B2 (en) 2008-08-22 2017-12-12 Red Hat, Inc. Adjusting resource usage for cloud-based networks
US8385202B2 (en) 2008-08-27 2013-02-26 Cisco Technology, Inc. Virtual switch quality of service for virtual machines
JP5234342B2 (ja) 2008-09-22 2013-07-10 株式会社日立製作所 計算機システム及びその制御方法
US7885276B1 (en) * 2008-09-30 2011-02-08 Emc Corporation Isolating network traffic in multi-tenant virtualization environments
US9407550B2 (en) 2008-11-24 2016-08-02 Avago Technologies General Ip (Singapore) Pte. Ltd. Method and system for controlling traffic over a computer network
US7962647B2 (en) * 2008-11-24 2011-06-14 Vmware, Inc. Application delivery control module for virtual network switch
US8565118B2 (en) * 2008-12-30 2013-10-22 Juniper Networks, Inc. Methods and apparatus for distributed dynamic network provisioning
US8255496B2 (en) 2008-12-30 2012-08-28 Juniper Networks, Inc. Method and apparatus for determining a network topology during network provisioning
US8331362B2 (en) 2008-12-30 2012-12-11 Juniper Networks, Inc. Methods and apparatus for distributed dynamic network provisioning
US8213336B2 (en) * 2009-02-23 2012-07-03 Cisco Technology, Inc. Distributed data center access switch
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
US8953603B2 (en) 2009-10-28 2015-02-10 Juniper Networks, Inc. Methods and apparatus related to a distributed switch fabric
US8442048B2 (en) 2009-11-04 2013-05-14 Juniper Networks, Inc. Methods and apparatus for configuring a virtual network switch

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101351784A (zh) * 2005-12-30 2009-01-21 阿西式·A·潘迪亚 运行时自适应搜索处理器

Also Published As

Publication number Publication date
US8442048B2 (en) 2013-05-14
EP2738976A1 (en) 2014-06-04
US9882776B2 (en) 2018-01-30
CN102055667A (zh) 2011-05-11
EP2330781A3 (en) 2011-09-14
EP2738976B1 (en) 2016-09-07
US20150092605A1 (en) 2015-04-02
US20110103259A1 (en) 2011-05-05
EP2330781B1 (en) 2014-04-09
EP2330781A2 (en) 2011-06-08
US8937862B2 (en) 2015-01-20
US20130315060A1 (en) 2013-11-28

Similar Documents

Publication Publication Date Title
US9912582B2 (en) Multi-tenant isolation in a cloud environment using software defined networking
US9923732B2 (en) Virtual gateways and implicit routing in distributed overlay virtual environments
US7738457B2 (en) Method and system for virtual routing using containers
US9858104B2 (en) Connecting fabrics via switch-to-switch tunneling transparent to network servers
US8054832B1 (en) Methods and apparatus for routing between virtual resources based on a routing location policy
US9413649B2 (en) Virtual network device architecture
US9571507B2 (en) Providing a virtual security appliance architecture to a virtual cloud infrastructure
US20030069973A1 (en) Content service aggregation system control architecture
Hu et al. A survey on software-defined network and openflow: From concept to implementation
US20090150529A1 (en) Method and system for enforcing resource constraints for virtual machines across migration
US20150200808A1 (en) Method and system for virtual machine aware policy management
US9294351B2 (en) Dynamic policy based interface configuration for virtualized environments
US7733795B2 (en) Virtual network testing and deployment using network stack instances and containers
CN102487358B (zh) 用于与交换机结构相关的流控制的方法和装置
US20130308647A1 (en) Virtual Local Area Network State Processing in a Layer 2 Ethernet Switch
US20120131662A1 (en) Virtual local area networks in a virtual machine environment
US9311120B2 (en) Method and system for virtual machine networking
US8296459B1 (en) Custom routing decisions
US7945647B2 (en) Method and system for creating a virtual network path
EP2972855B1 (en) Automatic configuration of external services based upon network activity
Valdivieso Caraguay et al. SDN: Evolution and opportunities in the development IoT applications
US20090327392A1 (en) Method and system for creating a virtual router in a blade chassis to maintain connectivity
EP2413550A1 (en) Methods and apparatus related to route selection within a network
Yi et al. A comprehensive survey of network function virtualization
US9385887B2 (en) Virtualization mapping

Legal Events

Date Code Title Description
PB01 Publication
C06 Publication
SE01 Entry into force of request for substantive examination
C10 Entry into substantive examination
CB02 Change of applicant information

Address after: American California

Applicant after: Peribit Networks Inc.

Address before: American California

Applicant before: Netscreen Technologies Inc.

COR Change of bibliographic data

Free format text: CORRECT: APPLICANT; FROM: NETSCREEN TECHNOLOGIES INC. TO: JUNIPER NETWORKS INC.

GR01 Patent grant
C14 Grant of patent or utility model