Patent application number | Description | Published |
20100040063 | GENERALIZED SERIALIZATION QUEUE FRAMEWORK FOR PROTOCOL PROCESSING - A method for processing packets. The method includes receiving a first packet, wherein the first packet is associated with a first protocol, classifying the first packet using a protocol associated with the first packet, sending the first packet to a first receive ring based on the classification, sending the first packet from the first receive ring to a first virtual network interface card (VNIC) based on an operating mode, sending the first packet from the first VNIC to a first protocol specific virtual network stack (VNS), wherein the first protocol specific VNS is configured to only process packets associated with the first protocol, and processing the first packet by the first protocol specific VNS to obtain a first processed packet. | 02-18-2010 |
20100284279 | METHOD AND SYSTEM FOR MONITORING NETWORK COMMUNICATION - A method for monitoring communication on a network. The method includes configuring a classifier using a monitoring rule, receiving a plurality of packets from the network; analyzing each of the plurality of packets by the classifier to determine to which of the plurality of packets satisfies the monitoring rule; forwarding any of the plurality of packets that satisfy the monitoring rule to a first hardware receive ring (HRR) located on a first physical network interface (NI), forwarding any of the plurality of packets that do not satisfy the monitoring rule to a second HRR, and transmitting a first number of packets from the first HRR directly to user level memory, wherein the user level memory resides on a host operatively connected to the first physical NI. | 11-11-2010 |
20100287455 | ENFORCING NETWORK BANDWIDTH PARTITIONING FOR VIRTUAL EXECUTION ENVIRONMENTS WITH DIRECT ACCESS TO NETWORK HARDWARE - A method for enforcing network bandwidth partitioning. The method includes verifying that a guest driver in a guest operating system (OS) is configured to enforce a resource usage policy, wherein the guest OS resides on a host, mapping a hardware receive ring (HRR) residing on a physical network interface card (NIC) operatively connected to the host to the guest OS, wherein after the mapping the guest OS is configured to receive packets directly from the HRR, determining, using monitoring information, that the guest OS should not receive packets directly from the HRR, and in response to the determination, creating a data path from the HRR to a host OS executing on the host, receiving packets for the guest OS from the HRR by the host OS over the data path, and forwarding the packets from the host OS to the guest OS. | 11-11-2010 |
20100299459 | REFLECTING BANDWIDTH AND PRIORITY IN NETWORK ATTACHED STORAGE I/O - A method for processing a first input/output (I/O) request on a network attached storage (NAS) device that includes receiving the first I/O request from a source by the NAS device, placing the first I/O request in an I/O queue associated with the NAS device, wherein the first I/O request is placed in the I/O queue based on a priority of the first I/O request using a remote storage access protocol, and when the first I/O request is associated with the highest priority in the I/O queue, determining whether a bandwidth associated with the source of the first I/O request is exceeded, processing the first I/O request if the bandwidth associated with the source of the first I/O request is not exceeded, and placing the first I/O request in sleep mode if the bandwidth associated with the source of the first I/O request is exceeded. | 11-25-2010 |
20100303075 | MANAGING TRAFFIC ON VIRTUALIZED LANES BETWEEN A NETWORK SWITCH AND A VIRTUAL MACHINE - A computer readable medium comprising software instructions for managing resources on a host, wherein the software instructions comprise functionality to: configure a classifier located on a NIC, to forward packets addressed to a first destination address to a first HRR mapped to a first VNIC, wherein packets addressed to the first destination address are associated with a first PFC lane; configure the classifier to forward packets addressed to a second destination address to a second HRR, wherein packets addressed to the second destination address are associated with a second PFC lane; and transmit, by the first VNIC, a pause frame associated with the first PFC lane to a switch operatively connected to the physical NIC, wherein the switch, in response to receiving the pause frame, stores packets associated with the first PFC lane in a buffer without transmitting the packets. | 12-02-2010 |
20100306358 | HANDLING OF MULTIPLE MAC UNICAST ADDRESSES WITH VIRTUAL MACHINES - A method for managing a guest OS executing on a host. The method includes receiving, from the guest OS associated with a first MAC address, a second MAC address, wherein the first MAC address is associated with a first guest VNIC, wherein the second MAC address is associated with a second guest VNIC; configuring an intermediate VNIC executing on the host OS to forward packets associated with the second MAC address to the guest OS, wherein packets associated with the first MAC address and received by the intermediate VNIC are forwarded to the guest OS; and forwarding the second MAC address from the intermediate VNIC to a device driver associated with a physical NIC, wherein the device driver configures a classifier on the physical NIC to forward packets associated with the second MAC address to a first HRR located on the physical NIC associated with the intermediate VNIC. | 12-02-2010 |
20100329259 | UPPER LAYER BASED DYNAMIC HARDWARE TRANSMIT DESCRIPTOR RECLAIMING - In general, the invention relates to reclaiming transmit descriptors by configuring a media access control (MAC) to execute a first MAC layer thread to reclaim a first number of transmit descriptors (TDs) from a first hardware transmit ring (HTR) using a first reclaim algorithm, where the first reclaim algorithm is associated with a first transmission pattern and a first TDR status. The invention further includes receiving, by a virtual NIC (VNIC) executing within the MAC layer, a first number of packets, forwarding the first number of packets to a device driver on the host associated with the physical NIC, and forwarding the first number of packets from the device driver to the physical NIC using the first number of TDs, where the first plurality of TDs are reclaimed by the first MAC layer thread according to the first reclaim algorithm. | 12-30-2010 |
20100333189 | METHOD AND SYSTEM FOR ENFORCING SECURITY POLICIES ON NETWORK TRAFFIC - A computer readable medium that includes computer readable program code embodied therein. The computer readable medium causes the computer system to receive, by a data link rule enforcer, a packet from a packet source of the packets, and obtain a data link rule applying to a data link. The data link is operatively connected to the packet source, and the data link is associated with a media access control (MAC) address. The computer readable medium further causes the computer system to determine, by the data link rule enforcer, whether the packet complies with the data link rule, and drop, by the data link rule enforcer, the packet when the packet fails to comply with the data link rule. | 12-30-2010 |
20110019553 | METHOD AND SYSTEM FOR LOAD BALANCING USING QUEUED PACKET INFORMATION - A computer readable medium including instructions executable by a processor to perform a method, the method including obtaining a packet by a load balancer, obtaining queued packet information for a plurality of target hosts operatively connected to the load balancer, selecting the one of the plurality of target hosts using the queued packet information, and sending the packet to the selected target host using a first communication channel between the load balancer and the selected target host. | 01-27-2011 |
20110090910 | ENHANCED VIRTUAL SWITCH - A system and method for providing network connectivity to a host, involving creating a virtual switch on the host, specifying at least one data link attribute of the virtual switch, creating a plurality of virtual network interface cards (VNICs) on the host, associating each of the plurality of VNICs with the virtual switch, and assigning the at least one data link attribute of the virtual switch to each of the plurality of VNICs, where the virtual switch is connected to a physical network interface card (NIC) associated with the host, where each of the plurality of VNICs is associated with a different one of a plurality of execution environments, where the plurality of execution environments is located on the host, and where the plurality of VNICs is located on the host. | 04-21-2011 |
20110090915 | METHOD AND SYSTEM FOR INTRA-HOST COMMUNICATION - A system including first and second virtualized execution environments and a hypervisor for sending packets between virtualized execution environments. The first virtualized execution environment includes a first VNIC associated with a first hardware address (HA), a first proxy VNIC associated with a second HA, and a virtual switch. A Vswitch table for the virtual switch includes entries associating the first HA with the first VNIC and the second HA with the first proxy VNIC. The second virtualized execution environment includes a second proxy VNIC associated with the first HA. The virtual switch receives a first packet associated with the second HA. The virtual switch sends the first packet to the first proxy VNIC when Vswitch table entry associates the second HA with the first proxy VNIC. The first VNIC proxy sends the first packet from the first virtualized execution environment to the second virtualized execution environment using the hypervisor. | 04-21-2011 |
20110093251 | VIRTUALIZING COMPLEX NETWORK TOPOLOGIES - In general, the invention relates to a creating a network model on a host. The invention includes: gathering first component properties associated with a first physical network device on a target network; creating a first container using first component properties; determining that a second physical network device is operatively connected to the first physical network device via a physical network link; gathering second component properties associated with the physical network link; creating a first VNIC associated with the first container; determining that at least one virtual network device is executing on the second physical network device; gathering third component properties associated with the at least one virtual network device; creating a second container, wherein the second container is configured using the third component properties; and creating a second VNIC associated with the second container. | 04-21-2011 |
20110185195 | ENERGY EFFICIENT MANAGEMENT OF DATALINKS - A system including a first physical network interface card (NIC) include a number of rings, where at least one of the rings is an active ring. The system further includes a host, operatively connected to the first NIC, and including Media Access Control (MAC) layer. The MAC layer is configured to obtain a power management policy, obtain a load associated with the active ring, determine, using the power management policy and the load, that the state associated with at least one of the rings must be changed, and change, in response to the determining, the state of at least one of the of rings. | 07-28-2011 |
20110208873 | ARCHITECTURE-AWARE ALLOCATION OF NETWORK BUFFERS - A computer readable medium comprising software instructions for: obtaining an allocation policy by a MAC layer executing on a host; receiving, a request for a transmit kernel buffer (TxKB) by a sending application executing on at least one processor of the host; obtaining a location of a plurality of available TxKBs on the host; obtaining a location of at least one available network interface on the host; obtaining a location of the sending application; allocating one of the plurality of available TxKBs to obtain an allocated TxKB, wherein the one of the plurality of available TxKBs is selected according to the allocation policy using the location of the plurality of available TxKB, the location of the at least one available network interface, and the location of the sending application, to obtain an allocated TxKB; and providing, to the sending application, the location of the allocated TxKB. | 08-25-2011 |
20120002535 | METHOD AND SYSTEM FOR DISTRIBUTING NETWORK TRAFFIC AMONG MULTIPLE DIRECT HARDWARE ACCESS DATAPATHS - A system for distributing network traffic among direct hardware access datapaths, comprising: a processor; one or more activated PNICs; a host operating system; and a virtual machine (VM). Each activated PNIC sends and receives data packets over a network. Each activated PNIC is configured with a virtual function. The VM includes a VNIC and a virtual link aggregator configured to maintain a list identifying each activated PNIC. Virtual function mappings for the VM associate the VM with virtual functions for the activated PNICs. The virtual link aggregator selects the first activated PNIC for servicing a network connection and determines a virtual function for the first activated PNIC. The VNIC for the first activated PNIC uses the virtual function to directly transfer network traffic for the network connection between the VM and the first activated PNIC. | 01-05-2012 |
20120005521 | METHOD AND SYSTEM FOR MAINTAINING DIRECT HARDWARE ACCESS IN THE EVENT OF NETWORK INTERFACE CARD FAILURE - A system for maintaining direct hardware access in the event of PNIC failure. A host for the system includes: a processor; a first and a second PNIC, where the first PNIC is activated and all other PNICs are deactivated; a host operating system; a virtual machine; and a hypervisor for transferring packets between the host operating system and the virtual machine. The host operating system includes a link aggregator, multiple host VNICs, and a virtual switch associated with the VNICs. The first virtual machine includes a virtual network protocol stack and a guest VNIC. The link aggregator is configured to determine whether the first PNIC has failed. Based on a determination that the first PNIC has failed, the link aggregator is further configured to: remove a virtual function mapping between the first PNIC and the virtual machine; determine the second PNIC; deactivate the first PNIC; and activate the second PNIC. | 01-05-2012 |
20140254386 | METHOD AND SYSTEM FOR RESOURCE COHERENCY AND ANALYSIS IN A NETWORK - Systems, methods, and computer programs are presented for managing network traffic. A network switch includes a switch fabric and a resource coherency and analytics engine (RCAE) coupled to the switch fabric. The RCAE includes one or more virtualizable resource groups (VRGs) for managing network traffic flow across a plurality of network switches on the network. Further, the RCAE is operable to add network entities to each VRG, add flows to each VRG, and add other VRGs to each VRG. A virtualizable resource control list (VRCL), associated with each VRG, identifies which network entities in the VRG can communicate with each other, which network entities in the VRG can communicate with network entities in other VRGs, and a guaranteed bandwidth for the VRG associated with the VRCL. Furthermore, the RCAE is operable to exchange messages with other RCAEs in other network switches to implement traffic policies defined by each VRCL. | 09-11-2014 |