In one embodiment, an apparatus includes a processor configured for operation in a control plane in a distributed virtual switch in communication with a plurality of virtual machines each having a virtual interface. The processor is operable to identify other control planes in the distributed virtual switch, assign a virtual interface identifier to one of the virtual interfaces, receive a configuration for the virtual interface, and share the configuration with the other control planes in the distributed virtual switch. The virtual interface identifier provides a unique identifier for the virtual interface across all of the control planes. The apparatus further includes memory for storing the configuration of the virtual interface. A method for operating a network device associated with a control in the distributed virtual switch is also disclosed.

Patent
   8213336
Priority
Feb 23 2009
Filed
Feb 23 2009
Issued
Jul 03 2012
Expiry
Nov 04 2029
Extension
254 days
Assg.orig
Entity
Large
120
13
EXPIRED<2yrs
13. An apparatus comprising:
a processor for connecting with a management station and joining a distributed virtual switch comprising a plurality of control plane domains associated with a plurality of network devices, the distributed virtual switch operating as an access switch with a control plane, identifying the control plane domains in the distributed virtual switch, communicating with one or more servers comprising a plurality of virtual machines each comprising a virtual interface, assigning a virtual interface identifier to one of said virtual interfaces, receiving a port profile for said virtual interface, and sharing said port profile with said other control planes in the distributed virtual switch; and
memory for storing said port profile of said virtual interface;
wherein said virtual interface identifier provides a unique identifier for said virtual interface across all of said control plane domains.
18. Logic encoded in one or more non-transitory tangible media for execution by a processor, and when executed operable to:
connect with a management station and join a distributed virtual switch comprising a plurality of control plane domains associated with a plurality of network devices, the distributed virtual switch operating as an access switch with a control plane;
identify the control plane domains in the distributed virtual switch, the network devices in communication with one or more servers comprising a plurality of virtual machines each comprising a virtual interface:
assign a virtual interface identifier to one of said virtual interfaces, wherein said virtual interface identifier provides a unique identifier for said virtual interface across all of said control plane domains; and
receive a port profile for said virtual interface and share said port profile with said control plane domains in the distributed virtual switch.
1. A method comprising:
connecting with a management station and joining a distributed virtual switch comprising a plurality of control plane domains associated with a plurality of network devices, the distributed virtual switch operating as an access switch with a control plane;
identifying the control plane domains in the distributed virtual switch, the network devices in communication with one or more servers comprising a plurality of virtual machines each comprising a virtual interface, the one or more servers each comprising a data plane associated with the control plane of the distributed virtual switch;
assigning a virtual interface identifier to one of said virtual interfaces, wherein said virtual interface identifier provides a unique identifier for said virtual interface across all of said control plane domains; and
receiving a port profile for said virtual interface and sharing said port profile with said other control plane domains in the distributed virtual switch.
2. The method of claim 1 further comprising receiving notification of a location of one or more of said virtual interfaces.
3. The method of claim 1 further comprising identifying a new virtual interface and receiving state information for the new virtual interface from said control plane domain previously associated with the new virtual interface.
4. The method of claim 3 wherein receiving said state information comprises receiving an IP address of said control plane domain previously associated with the new virtual interface and requesting said state information.
5. The method of claim 3 further comprising transmitting a location of the new virtual interface.
6. The method of claim 1 wherein one of the control plane domains operates as a server control plane domain and said other control plane domains operate as client control plane domains.
7. The method of claim 6 wherein one of said other control plane domains operate as a backup server control plane domain.
8. The method of claim 6 further comprising transmitting a server control plane domain IP address to said client control plane domains.
9. The method of claim 6 further comprising configuring said port profiles for each of said plurality of virtual machines and transmitting said port profiles to said client control plane domains.
10. The method of claim 6 further comprising receiving a request for one or more of said virtual interface identifiers from one of said client control plane domains.
11. The method of claim 1 wherein the distributed virtual switch operating as an access switch is available for viewing by a server administrator.
12. The method of claim 1 wherein the distributed virtual switch comprises a plurality of customer distributed virtual switches.
14. The apparatus of claim 13 wherein the processor is configured to identify a new virtual interface and receive state information for the new virtual interface from the control plane domain previously associated with the new virtual interface.
15. The apparatus of claim 13 further comprising wherein one of the control plane domains operates as a server control plane domain and said other control plane domains operate as client control plane domains.
16. The apparatus of claim 15 wherein one of said other control plane domains operate as a backup server control plane domain.
17. The apparatus of claim 13 wherein the port profile specifies attributes for said virtual interface configured at the management station.
19. The logic of claim 18 wherein the logic is operable to identify a new virtual interface and receive state information for the new virtual interface from one of the control plane domain previously associated with the new virtual interface.
20. The logic of claim 18 wherein the logic is operable to transmit a location of one or more of said virtual interfaces in the distributed virtual switch.

The present disclosure relates generally to communication networks, and more particularly, to a distributed data center access switch.

Data centers often use a small percentage of available CPU, storage, and memory capacity. This results in deployment of more servers than are necessary to perform a specified amount of work. Additional servers increase costs and create a more complex and disparate environment that can be difficult to manage. Many data center managers are turning to virtualization so that resources can be shared across a network.

Virtualization is a technology which allows one computer to do the job of multiple computers by sharing resources of a single computer across multiple systems. Through the use of virtualization, multiple operating systems and applications can run on the same computer at the same time, thereby increasing utilization and flexibility of hardware. Virtualization allows servers to be decoupled from underlying hardware, thus resulting in multiple virtual servers sharing the same physical server hardware. This also allows the virtual server to be moved from one physical server to another physical server while maintaining continuous service availability.

FIG. 1 illustrates an example of a network in which embodiments described herein may be implemented.

FIG. 2 illustrates details of a connection between data planes and a control plane in the network of FIG. 1.

FIG. 3 is a flowchart illustrating an overview of a process for operating a network device associated with a control plane in a distributed virtual switch, in accordance with one embodiment.

FIG. 4 is a flowchart illustrating a process for moving a virtual machine and associated interface between control planes, in accordance with one embodiment.

FIG. 5 depicts an example of control plane discovery and migration of a virtual machine between control planes.

FIG. 6 is a block diagram illustrating connections between a management station and redundant control plane devices.

FIG. 7 is a block diagram illustrating a managed virtual switch service.

FIG. 8 depicts an example of a network device useful in implementing embodiments described herein.

Corresponding reference characters indicate corresponding parts throughout the several views of the drawings.

Overview

In one embodiment, a method for operating a network device associated with a control plane in a distributed virtual switch in communication with a plurality of virtual machines each comprising a virtual interface generally comprises identifying at the network device, other control planes in the distributed virtual switch, assigning a virtual interface identifier to one of the virtual interfaces, receiving a configuration for the virtual interface, and sharing the configuration with the other control planes in the distributed virtual switch. The virtual interface identifier provides a unique identifier for the virtual interface across all of the control planes.

In another embodiment, an apparatus generally comprises a processor configured for operation in a control plane in a distributed virtual switch in communication with a plurality of virtual machines each comprising a virtual interface. The processor is operable to identify other control planes in the distributed virtual switch, assign a virtual interface identifier to one of the virtual interfaces, receive a configuration for the virtual interface, and share the configuration with the other control planes in the distributed virtual switch. The virtual interface identifier provides a unique identifier for the virtual interface across all of the control planes. The apparatus further includes memory for storing the configuration of the virtual interface.

Example Embodiments

The following description is presented to enable one of ordinary skill in the art to make and use the invention. Descriptions of specific embodiments and applications are provided only as examples and various modifications will be readily apparent to those skilled in the art. The general principles described herein may be applied to other embodiments and applications without departing from the scope of the invention. Thus, the present invention is not to be limited to the embodiments shown, but is to be accorded the widest scope consistent with the principles and features described herein. For purpose of clarity, details relating to technical material that is known in the technical fields related to the invention have not been described in detail.

Virtualization allows one computer to do the job of multiple computers by sharing the resources of a single computer across multiple systems. Software is used to virtualize hardware resources of a computer, including, for example, the CPU, RAM, hard disk, and network controller, to create a virtual machine that can run its own operating system and applications. Multiple virtual machines share hardware resources without interfering with each other so that several operating systems and applications can be run at the same time on a single computer. Virtual machines may be used, for example, in a virtual infrastructure to dynamically map physical resources to business needs. Virtualization thus enables the aggregation of multiple servers, storage infrastructure, and networks into shared resources that can be delivered dynamically to applications as needed.

Embodiments described herein operate in a networking environment, such as a data center networking environment, to form a distributed virtual switch (DVS) which allows for multiple control planes in the same distributed virtual switch. Since the scalability of a single control plane is limited to a subset of the data center, it is desired to allow the migration of virtual machines between physical servers which are connected to switches controlled by different control planes. The distributed virtual switch allows for migration of virtual machines across different control planes to create a seamless data center access layer. While the embodiments are described herein in the context of a data center networking environment, it is to be understood that the embodiments may be used in other networking environments.

In one embodiment, the virtual machine connects to a virtual Ethernet interface to which a virtual network interface card (VNIC) connects. A port profile is defined for each interface and provides a configuration template for the interface configuration. The port profile includes objects that provide a means to specify attributes such as network and security policies. The distributed virtual switch allows the virtual Ethernet interface to migrate between physical servers as the virtual machine migrates and provides a means for control planes to share port profiles so that the port profile follows the virtual machine as it migrates from one server to another.

Referring now to the drawings, and first to FIG. 1, an example of a network 10 that may implement embodiments described herein is shown. For simplification, only a small number of nodes are shown. The system operates in the context of a data communication network including multiple network elements. Some of the elements in a network that employs the system may be network devices such as servers, switches, or routers. The network device may include, for example, a master central processing unit (CPU), interfaces, and a bus. The CPU preferably includes memory and a processor. The network device may be implemented on a general purpose network machine such as described below with respect to FIG. 8.

The network 10 shown in FIG. 1 includes two control plane domains 12, 14. Each of the control plane domains comprises one or more network devices (e.g., Cisco Nexus™ series switch). The control plane domain may also comprise a server, network management station, or other network device. The network devices (at the control plane domains 12, 14 shown in FIG. 1) are connected to one or more servers 30. In the example shown in FIG. 1, control plane domain 12 is connected to two servers 30 via links 22 and 24, and control plane domain 14 is connected to one server 30 via link 26. The network devices may also be in communication with a management station 32 (e.g., virtualization management platform such as VMware Virtual Center management station or others) via links 18, 20.

Each server 30 includes a virtual switch 34 and one or more virtual machines (VM A, VM B, VM C, VM D, VM E) 36. The virtual machines 36 are in communication with the virtual switch 34 via the virtual network interface card (VNIC) which connects to the virtual Ethernet interface. The virtual switches 34 are in communication with the control planes via Ethernet interfaces. The virtual switch 34 switches traffic between the virtual machines and the physical network interface card. In one embodiment, the virtual switch 34 is configured to operate in a hypervisor environment. Virtual machines 36 located within the same server (e.g., VM A and VM B in FIG. 1) may also communicate directly with one another via the virtual switch 34. As described below, each of the virtual machines 36 may be moved from one server 30 to another server. The virtual machine 36 may be moved between servers connected to the same control plane 12, 14 or different control planes.

As illustrated in FIG. 1, the control planes 12, 14 are located in a single distributed virtual switch (DVS) 16. Multiple control planes thus operate in a single DVS 16 within a virtualization management station (e.g., management station 32). The control plane is decoupled from a server administrator view of the DVS 16. This allows a server administrator to view only the single distributed data center access switch (DVS) and eliminates the need for the server administrator to understand the details of the network topology. A network administrator can view each individual control plane domain in the DVS and therefore have the ability to determine the location of a virtual machine interface (virtual Ethernet interface) at any time. As described in detail below, the virtual Ethernet interfaces, in addition to moving between servers in a single control plane, are able to migrate between different control planes within the DVS 16.

The DVS 16 is created when an initial switch (e.g., control plane 12) connects to the management station 32. When subsequent control planes (e.g., control plane domain 14) connect to the management station 32, the control planes use the same credentials to login to the management station and detect the presence of the DVS 16. The control plane 14 will thus join the existing DVS 16 rather than creating a new DVS instance.

It is to be understood that the simplified network shown in FIG. 1 is only one example, and that the embodiments described herein may be employed in networks having different configurations and types of network devices.

FIG. 2 illustrates details of a connection between the servers 30 and an access switch 40 associated with a control plane 42 (e.g., control plane domains 12, 14 of FIG. 1). The control plane 42 is integrated in the switch 40. Each server 30 includes a data plane (data path) 44 associated with the control plane 42 of the switch 40. Each data path 44 is VN-Tag enabled and virtual Ethernet ports are constrained to the upstream control plane 42. Each virtual machine 36 has a virtual NIC and virtual Ethernet interface associated with one of the servers 30 and data plane 44. As previously noted, the virtual Ethernet interfaces are allowed to move between different control planes 42 as the virtual machine 36 moves from a server 30 connected to one control plane to another server connected to a different control plane.

FIG. 3 is a flowchart illustrating an overview of a process for operating a network device associated with a control plane in a distributed virtual switch. The network device may be, for example, a switch, server, or network management station. As discussed above, the DVS is created when an initial control plane connects to the virtualization management station. At step 50, the network device (e.g., switch in control plane domain 12 of FIG. 1), discovers other control planes that make up an existing distributed virtual switch within a virtualization management station. The other control planes may also be integrated into network devices such as switches. The switch discovers the control planes that make up the DVS and existing virtual Ethernet interface locations (i.e., virtual Ethernet to control plane bindings). This allows the network administrator to identify the DVS membership and current virtual Ethernet interface locations. At step 52 the switch assigns virtual interface identifiers to virtual Ethernet interfaces associated with the virtual machines located at a server connected to the switch. The virtual interface may be identified by a name or other identifier that provides a unique identifier for the virtual Ethernet interface across all of the control planes in the DVS. The virtual Ethernet interfaces are thus coordinated across all of the control planes. The identifier may be requested from one of the switches or management station upon original virtual Ethernet interface creation or a range of names may be provided to the switch and locally stored in memory.

The switch receives configuration information for each of its associated virtual interfaces at step 54. The switch may receive configuration information input by a user or may receive configuration information from the management station or another switch in the DVS. In one embodiment, the configuration information is a port profile that specifies attributes for the virtual interface. The port profiles may be configured by a user at the network management station and transmitted to the switch or transmitted from another network device in the DVS. The configuration information is shared between control planes in the DVS (step 56). The information may be shared periodically or requested upon a virtual machine move from one control plane to another control plane. Details of the above steps in accordance with exemplary embodiments are described below.

Communication between control planes for control plane discovery (step 50) may be performed by various processes, including for example, a peer to peer protocol, a fabric service, network management, or a client-server model. In a preferred embodiment, the client-server model is used with one of the control planes (and the associated switch) configured as the server and the other control planes (and associated switches) configured as clients. In one embodiment of the client-server architecture, one control plane is configured as the active server control plane and another control plane is configured as the backup server control plane. The backup server control plane acts as a client control plane to obtain configuration from the active server control plane. The rest of the control planes within the data center are configured as clients. The client control planes are configured with a virtual server control plane IP address, which can be obtained during discovery. The backup server control plane monitors the active server control plane and in the case of a failure at the active server, receives traffic addressed to the virtual server control plane IP address. The server control plane may use a push model to transmit data to the clients or the server control plane may advertise its IP address. The server control plane may be configured with a list of clients or discover the clients through client advertisement. In the client-server model, the server switch connects directly to the virtualization management station and passes information to the clients. The client switches and state can be viewed from the server switch.

As previously discussed, the virtual Ethernet interface name space is coordinated across control planes (step 52). The interface identifier can be requested from the server upon original virtual Ethernet interface creation. For example, upon creation of a new virtual Ethernet interface, the client control plane requests a virtual Ethernet interface name from the server control plane. This will ensure a consistent interface naming scheme across the entire data center. In one embodiment, each client control plane optimizes virtual Ethernet creation by prerequesting a range of virtual Ethernet names (e.g., 100 names).

Once the client discovers the server control plane, the client can request a download of all the known port profiles and virtual Ethernet interfaces (step 54). A periodic poll of the server control plane can be used to detect any configuration changes to the port profiles. The port profiles and virtual Ethernet interfaces are common across all control planes supporting the DVS. A user can configure port profiles at the server and pull information from clients, in the client-server model. If a port profile is present in the virtualization management station but not present in the switch, the port profile can be automatically created at the switch.

In the client-server model, the server may periodically poll the clients for configuration information or the clients may periodically submit updates to the server (step 56). The configuration information may provide dynamic state and feature configuration (e.g., SPAN (Switched Port Analyzer), IGMP (Internet Group Management Protocol) snooping, DHCP (Dynamic Host Configuration Protocol) snooping, IP Source Guard, etc.). The configuration information may also be shared between two client control planes following migration of a virtual machine, as described below with respect to the flowchart of FIG. 4.

In an alternative to the client-server model, a fabric service is used for communication between the control planes. A service such as Cisco Fabric Service (CFS) multicast IP may be used. Each control plane advertises to other control planes: (a) its control plane IP address; (b) associated management station (e.g., VMware Virtual Center server) and applicable scope of the DVS (e.g., a Data Center within the VMware Virtual Center server; and (c) virtual Ethernet interfaces. The advertisements may be transmitted periodically, or may be triggered by a new virtual Ethernet interface resident on the local control plane, new physical interface attached on local control plane, or detection of a new control plane within the same DVS.

FIG. 4 is a flowchart illustrating a process for moving a virtual machine between control planes. The virtual machine is moved from a first server at an originating control plane to a second server at a destination control plane. At step 64 a new virtual machine is identified at the destination control plane. The destination control plane is informed via the data plane of the originating control plane IP address (step 66). Once the originating control plane is known, the destination control plane can request state and configuration information from the originating control plane (step 68). In one embodiment, the destination control plane sets up a unicast connection to the originating control plane to obtain the interface state of the virtual Ethernet interface (step 70).

In one embodiment a DVS API (application programming interface) is used to transfer state information. In the case where a DVS API is not used, the client control plane can provide the MAC address of the virtual machine VNIC attached to the virtual Ethernet interface as part of the control plane discovery process. The destination control plane would then use the MAC address to ask the server control plane for the originating control plane previously hosting the moved virtual Ethernet interface. In the client-server model, the client control plane informs the active server control plane of the new virtual Ethernet interface location (step 72). In the fabric service model, all control planes are informed of the new location of the virtual Ethernet interface.

It is to be understood that the processes illustrated in FIGS. 3 and 4 are provided as examples and that steps may be added, deleted or the order of steps may be changed, without departing from the scope of the invention.

FIG. 5 illustrates an example of virtual machine 36 migration between control planes. Control plane discovery is performed between switches 40 (A, B, C, and D) to identify the control planes within the DVS, as previously described. An initial list of virtual machines 36 is obtained from the virtualization management station along with the port profile names. For example, the following list may be provided by the virtualization management station to identify the connection of the virtual Ethernet interface “veth 1” to switch A:

Upon migration of the virtual machine to a server connected to switch C, the control plane requests its state from the originating control plane and the data plane informs the control plane of new virtual NIC, as previously described.

FIG. 6 illustrates interactions between management station 32 and switches 40. The management station 32 is in communication with two switches 40 via a network 46. In this example, the switches are connected via a multi-chassis trunk (MCT) 47 and the switches 40 are connected to the data path (server 30) via a multi-chassis Ethernet channel (MCEC) 48. The switches 40 can be configured so that one switch operates as an active switch for the data path 44, while the other switch operates as a backup (standby mode). The data path 44 can load balance by selecting the upstream switch 40 to inform about the virtual Ethernet state. The virtual Ethernet interfaces and port profiles are synchronized between the switches via the MCT 47. The switches 40 can operate to share virtualization management station credentials across the MCT 47.

FIG. 7 illustrates an example of a managed virtual switch service. The DVS 16 is formed as described above and shown in FIG. 1. The DVS 16 is still viewed as a single DVS from a service provider perspective; however, each customer has their own DVS (e.g., DVS 1, DVS 2 indicated at 76 and 78, respectively). Role-based access control (RBAC) is provided on a virtual Ethernet interface and port profile basis and each customer has a customized view, with a separate role for each customer. In one embodiment, an external application is provided for configuration scaling. The External service application provides large scale RBAC access and a consolidated switch view to each customer. Customers can configure port profiles for their virtual machines. The application may also be used to track traffic from each virtual machine and create a layer 2 (L2) forwarding table view. The managed virtual switch service allows service providers to offer different features to different customers, track bandwidth per destination, and provide interface access control lists (ACLs,) and security groups, for example.

FIG. 8 depicts a network device 80 that may be used to implement embodiments described herein. Network device 80 is configured to implement all of the network protocols and extensions thereof described above. In one embodiment, network device 80 is a programmable machine that may be implemented in hardware, software, or any combination thereof. Logic may be encoded in one or more tangible media for execution by a processor. For example, processor 82 may execute codes stored in a program memory 84. Program memory 84 is one example of a computer-readable medium. Program memory 84 can be a volatile memory. Another form of computer-readable medium storing the same codes is a type of non-volatile storage such as floppy disks, CD-ROMs, DVD-ROMs, hard disks, flash memory, etc.

Network device 80 interfaces with physical media via a plurality of linecards 86. Linecards 86 may incorporate Ethernet interfaces, DSL interfaces, Gigabit Ethernet interfaces, 10-Gigabit Ethernet interfaces, SONET interfaces, etc. As packets are received, processed, and forwarded by network device 80, they may be stored in a packet memory 88. To implement functionality according to the system, linecards 86 may incorporate processing and memory resources similar to those discussed above in connection with the network device as a whole. It is to be understood that the network device 80 shown in FIG. 8 and described above is only one example and that different configurations of network devices may be used.

Although the method and apparatus have been described in accordance with the embodiments shown, one of ordinary skill in the art will readily recognize that there could be variations made to the embodiments without departing from the scope of the present invention. Accordingly, it is intended that all matter contained in the above description and shown in the accompanying drawings shall be interpreted as illustrative and not in a limiting sense.

Smith, Michael, Thompson, David, Bakke, Mark, Elangovan, Anusankar

Patent Priority Assignee Title
10003552, Jan 05 2015 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Distributed bidirectional forwarding detection protocol (D-BFD) for cluster of interconnected switches
10038592, Mar 17 2015 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Identifier assignment to a new switch in a switch group
10044568, May 13 2014 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Network extension groups of global VLANs in a fabric switch
10063473, Apr 30 2014 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Method and system for facilitating switch virtualization in a network of interconnected switches
10075394, Nov 16 2012 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Virtual link aggregations across multiple fabric switches
10142161, Jan 19 2016 Radware, Ltd.; Radware, Ltd Techniques for distribution of application delivery
10164883, Nov 10 2011 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED System and method for flow management in software-defined networks
10171303, Sep 16 2015 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED IP-based interconnection of switches with a logical chassis
10205657, Oct 31 2013 Hewlett Packard Enterprise Development LP Packet forwarding in data center network
10237090, Oct 28 2016 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Rule-based network identifier mapping
10277464, May 22 2012 RUCKUS IP HOLDINGS LLC Client auto-configuration in a multi-switch link aggregation
10284469, Aug 11 2014 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Progressive MAC address learning
10348643, Jul 16 2010 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED System and method for network configuration
10355879, Feb 10 2014 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Virtual extensible LAN tunnel keepalives
10419276, Jun 07 2010 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Advanced link tracking for virtual cluster switching
10439929, Jul 31 2015 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Graceful recovery of a multicast-enabled switch
10454760, May 23 2012 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Layer-3 overlay gateways
10462049, Mar 01 2013 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Spanning tree in fabric switches
10465492, May 20 2014 KATA SYSTEMS LLC System and method for oil and condensate processing
10476698, Mar 20 2014 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Redundent virtual link aggregation group
10579406, Apr 08 2015 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Dynamic orchestration of overlay tunnels
10581758, Mar 19 2014 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Distributed hot standby links for vLAG
10616108, Jul 29 2014 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Scalable MAC address virtualization
10637914, Mar 15 2013 VMware LLC Distributed network services
10673703, May 03 2010 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Fabric switching
10747564, Apr 02 2015 VMware LLC Spanned distributed virtual switch
10771318, Oct 24 2018 VMware LLC High availability on a distributed networking platform
10771431, Mar 27 2013 LENOVO ENTERPRISE SOLUTIONS SINGAPORE PTE LTD Synchronizing IP information of virtual machines
10924333, Jun 07 2010 Avago Technologies International Sales Pte. Limited Advanced link tracking for virtual cluster switching
11115466, Mar 15 2013 VMware LLC Distributed network services
11206173, Oct 24 2018 VMware LLC High availability on a distributed networking platform
11258760, Jun 22 2018 VMware LLC Stateful distributed web application firewall
11438219, Jun 07 2010 Avago Technologies International Sales Pte. Limited Advanced link tracking for virtual cluster switching
11671363, Dec 06 2012 Huawei Technologies Co., Ltd. Method and apparatus for cross-service-zone communication, and data center network
11736560, Mar 15 2013 VMware LLC Distributed network services
11757705, Jun 07 2010 Avago Technologies International Sales Pte. Limited Advanced link tracking for virtual cluster switching
8446914, Jun 08 2010 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Method and system for link aggregation across multiple switches
8532108, Sep 30 2009 Alcatel Lucent Layer 2 seamless site extension of enterprises in cloud computing
8619779, Sep 30 2009 Alcatel Lucent Scalable architecture for enterprise extension in a cloud topology
8625616, May 11 2010 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Converged network extension
8634308, Jun 02 2010 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Path detection in trill networks
8665886, Mar 26 2009 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Redundant host connection in a routed network
8693485, Oct 14 2009 Dell Products, LP Virtualization aware network switch
8867552, May 03 2010 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Virtual cluster switching
8879549, Jun 28 2011 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Clearing forwarding entries dynamically and ensuring consistency of tables across ethernet fabric switch
8885488, Jun 02 2010 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Reachability detection in trill networks
8885641, Jun 30 2011 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Efficient trill forwarding
8948056, Jun 28 2011 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Spanning-tree based loop detection for an ethernet fabric switch
8989186, Jun 08 2010 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Virtual port grouping for virtual cluster switching
8995272, Jan 26 2012 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Link aggregation in software-defined networks
8995444, Mar 24 2010 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Method and system for extending routing domain to non-routing end stations
9001824, May 18 2010 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Fabric formation for virtual cluster switching
9007958, Jun 29 2011 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED External loop detection for an ethernet fabric switch
9019976, Mar 26 2009 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Redundant host connection in a routed network
9110730, Aug 25 2011 Fujitsu Limited Communication method and communication apparatus
9112817, Jun 30 2011 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Efficient TRILL forwarding
9143445, Jun 08 2010 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Method and system for link aggregation across multiple switches
9154416, Mar 22 2012 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Overlay tunnel in a fabric switch
9158567, Oct 20 2009 Dell Products, LP System and method for reconfigurable network services using modified network configuration with modified bandwith capacity in dynamic virtualization environments
9231890, Jun 08 2010 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Traffic management for virtual cluster switching
9246703, Jun 08 2010 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Remote port mirroring
9270486, Jun 07 2010 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Name services for virtual cluster switching
9270572, May 02 2011 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Layer-3 support in TRILL networks
9313096, Dec 04 2012 International Business Machines Corporation Object oriented networks
9313097, Dec 04 2012 International Business Machines Corporation Object oriented networks
9331872, May 22 2012 Cisco Technology, Inc.; Cisco Technology, Inc Implementing PVLANs in a large-scale distributed virtual switch
9350564, Jun 28 2011 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Spanning-tree based loop detection for an ethernet fabric switch
9350680, Jan 11 2013 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Protection switching over a virtual link aggregation
9374301, May 18 2012 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Network feedback in software-defined networks
9401818, Mar 15 2013 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Scalable gateways for a fabric switch
9401861, Jun 28 2011 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Scalable MAC address distribution in an Ethernet fabric switch
9401872, Nov 16 2012 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Virtual link aggregations across multiple fabric switches
9407533, Jun 28 2011 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Multicast in a trill network
9413691, Jan 11 2013 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED MAC address synchronization in a fabric switch
9426117, Jun 29 2012 Hewlett Packard Enterprise Development LP Firewall security between virtual devices
9450870, Nov 10 2011 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED System and method for flow management in software-defined networks
9455935, Jun 08 2010 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Remote port mirroring
9461840, Jun 02 2010 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Port profile management for virtual cluster switching
9461911, Jun 08 2010 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Virtual port grouping for virtual cluster switching
9477500, Mar 15 2013 VMware LLC Managing and controlling a distributed network service platform
9483286, Mar 15 2013 VMware LLC Distributed network services
9485148, May 18 2010 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Fabric formation for virtual cluster switching
9524173, Oct 09 2014 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Fast reboot for a switch
9544219, Jul 31 2014 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Global VLAN services
9548873, Feb 10 2014 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Virtual extensible LAN tunnel keepalives
9548926, Jan 11 2013 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Multicast traffic load balancing over virtual link aggregation
9565028, Jun 10 2013 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Ingress switch multicast distribution in a fabric switch
9565099, Mar 01 2013 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Spanning tree in fabric switches
9565113, Jan 15 2013 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Adaptive link aggregation and virtual link aggregation
9602430, Aug 21 2012 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Global VLANs for fabric switches
9608833, Jun 08 2010 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Supporting multiple multicast trees in trill networks
9626255, Dec 31 2014 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Online restoration of a switch snapshot
9628293, Jun 08 2010 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Network layer multicasting in trill networks
9628336, May 03 2010 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Virtual cluster switching
9628407, Dec 31 2014 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Multiple software versions in a switch group
9660939, Jan 11 2013 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Protection switching over a virtual link aggregation
9699001, Jun 10 2013 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Scalable and segregated network virtualization
9699029, Oct 10 2014 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Distributed configuration management in a switch group
9699117, Nov 08 2011 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Integrated fibre channel support in an ethernet fabric switch
9716672, May 28 2010 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Distributed configuration management for virtual cluster switching
9729387, Jan 26 2012 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Link aggregation in software-defined networks
9736085, Aug 29 2011 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED End-to end lossless Ethernet in Ethernet fabric
9742693, Feb 27 2012 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Dynamic service insertion in a fabric switch
9769016, Jun 07 2010 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Advanced link tracking for virtual cluster switching
9774543, Jan 11 2013 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED MAC address synchronization in a fabric switch
9800471, May 13 2014 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Network extension groups of global VLANs in a fabric switch
9806906, Jun 08 2010 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Flooding packets on a per-virtual-network basis
9806949, Sep 06 2013 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Transparent interconnection of Ethernet fabric switches
9807005, Mar 17 2015 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Multi-fabric manager
9807007, Aug 11 2014 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Progressive MAC address learning
9807017, Jan 11 2013 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Multicast traffic load balancing over virtual link aggregation
9807031, Jul 16 2010 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED System and method for network configuration
9848040, Jun 07 2010 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Name services for virtual cluster switching
9871676, Mar 15 2013 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Scalable gateways for a fabric switch
9887916, Mar 22 2012 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Overlay tunnel in a fabric switch
9912612, Oct 28 2013 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Extended ethernet fabric switches
9912614, Dec 07 2015 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Interconnection of switches based on hierarchical overlay tunneling
9942097, Jan 05 2015 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Power management in a network of interconnected switches
9942173, May 28 2010 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Distributed configuration management for virtual cluster switching
9998365, May 18 2012 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Network feedback in software-defined networks
Patent Priority Assignee Title
20030014524,
20060230407,
20070028244,
20080163207,
20080201414,
20080271016,
20080275975,
20090025007,
20090292858,
20100046531,
20100131636,
20100165877,
WO2008093174,
/////
Executed onAssignorAssigneeConveyanceFrameReelDoc
Feb 06 2009SMITH, MICHAELCisco Technology, IncASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS 0223550309 pdf
Feb 09 2009ELANGOVAN, ANUSANKARCisco Technology, IncASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS 0223550309 pdf
Feb 16 2009THOMPSON, DAVIDCisco Technology, IncASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS 0223550309 pdf
Feb 21 2009BAKKE, MARKCisco Technology, IncASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS 0223550309 pdf
Feb 23 2009Cisco Technology, Inc.(assignment on the face of the patent)
Date Maintenance Fee Events
Jan 04 2016M1551: Payment of Maintenance Fee, 4th Year, Large Entity.
Jan 03 2020M1552: Payment of Maintenance Fee, 8th Year, Large Entity.
Feb 19 2024REM: Maintenance Fee Reminder Mailed.
Aug 05 2024EXP: Patent Expired for Failure to Pay Maintenance Fees.


Date Maintenance Schedule
Jul 03 20154 years fee payment window open
Jan 03 20166 months grace period start (w surcharge)
Jul 03 2016patent expiry (for year 4)
Jul 03 20182 years to revive unintentionally abandoned end. (for year 4)
Jul 03 20198 years fee payment window open
Jan 03 20206 months grace period start (w surcharge)
Jul 03 2020patent expiry (for year 8)
Jul 03 20222 years to revive unintentionally abandoned end. (for year 8)
Jul 03 202312 years fee payment window open
Jan 03 20246 months grace period start (w surcharge)
Jul 03 2024patent expiry (for year 12)
Jul 03 20262 years to revive unintentionally abandoned end. (for year 12)