Patents by Inventor Nicolas G. Droux

Nicolas G. Droux has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Publication number: 20080019274
    Abstract: A method for notifying a packet destination that includes receiving a packet by a network interface card (NIC), where the packet destination is a destination of the packet, classifying the packet, forwarding the packet to one of a plurality of receive rings on the NIC, determining whether the one of the plurality of receive rings comprises space to store the packet, dropping the packet if the receive ring does not comprise the space to store the packet, and sending a notification message to the packet destination, where the notification message indicates that the packet was dropped by the receive ring.
    Type: Application
    Filed: July 20, 2006
    Publication date: January 24, 2008
    Applicant: Sun Microsystems, Inc.
    Inventors: Nicolas G. Droux, Kais Belgaied, Sunay Tripathi
  • Publication number: 20080022016
    Abstract: A method for processing a packet that includes receiving a packet for a target, classifying the packet, and sending the packet to a receive ring based on the classification. The method also includes obtaining an identifier (ID) associated with the target based on the classification, and sending a request for virtual memory that includes the ID. Furthermore, the method includes determining, using the ID, whether the target has exceeded a virtual memory allocation associated with the target. In addition, the method includes allocating the virtual memory, storing the packet in the virtual memory, and updating the virtual memory allocation associated with the target to reflect the allocation of the virtual memory, all if the target does not exceed the virtual memory allocation. The method further includes waiting until the target is not exceeding the virtual memory allocation if the target exceeds the virtual memory allocation.
    Type: Application
    Filed: July 20, 2006
    Publication date: January 24, 2008
    Applicant: Sun Microsystems, Inc.
    Inventors: Sunay Tripathi, Erik Nordmark, Nicolas G. Droux
  • Publication number: 20080019359
    Abstract: A method for processing packets that includes receiving a first packet for a first target by a network interface card (NIC), classifying the first packet, sending the first packet to a first receive ring in the NIC based on the classification of the first packet, sending the first packet to a Network Layer from the first receive ring, sending a first virtual network stack (VNS) Instance ID associated with the first receive ring to the Network Layer, obtaining a first VNS Instance parameter using the first VNS Instance ID, and processing the first packet in the Network Layer using the first VNS Instance parameter to obtain a first network processed packet.
    Type: Application
    Filed: July 20, 2006
    Publication date: January 24, 2008
    Applicant: Sun Microsystems, Inc.
    Inventors: Nicolas G. Droux, Erik Nordmark, Sunay Tripathi
  • Publication number: 20080019377
    Abstract: A method for processing packets that includes receiving a first packet for a first target on a host, prior to sending the packet to a Network Layer in the host, determining the first target of the first packet, obtaining a first target ID associated with the first target, obtaining a first virtual network stack (VNS) instance ID using the first target ID, and obtaining a first VNS Instance parameter using the first VNS instance ID, sending the first packet to the Network Layer, and processing the first packet in the Network Layer using the first VNS Instance parameter to obtain a first network processed packet.
    Type: Application
    Filed: July 20, 2006
    Publication date: January 24, 2008
    Applicant: Sun Microsystems
    Inventors: Erik Nordmark, Nicolas G. Droux, Sunay Tripathi
  • Publication number: 20080019360
    Abstract: A method for processing a packet that includes receiving the packet where the packet comprises a header, and traversing a flow table comprising a plurality of flow table entries (FTEs) for each FTE encountered during the traversal, obtaining a packet matching function associated with the FTE, applying the packet matching function associated with the FTE to the header to determine whether the packet matches the FTE, if the packet matches the FTE, send the packet to one selected from the group consisting of one of a plurality of receive rings (RRs) and a first sub-flow table, where the first sub-flow table is associated with the FTE, stopping the traversal of the flow table, and if the packet does not match the FTE continue the traversal of the flow table.
    Type: Application
    Filed: July 20, 2006
    Publication date: January 24, 2008
    Applicant: Sun Microsystems, Inc.
    Inventors: Kais Belgaied, Nicolas G. Droux, Sunay Tripathi
  • Publication number: 20080021985
    Abstract: A method for changing network configuration parameters that includes generating a request to change a network configuration parameter by a user, determining whether the user is allowed to change the network configuration parameter using a network configuration database, if the user is allowed to change the network configuration parameter, updating the network configuration database to reflect the change in the network configuration parameter, updating a container associated with the network configuration parameter to reflect the change in the configuration parameter, and if the user is not allowed to change the network configuration parameter, dropping the request.
    Type: Application
    Filed: July 20, 2006
    Publication date: January 24, 2008
    Applicant: Sun Microsystems, Inc.
    Inventors: Kais Belgaied, Erik Nordmark, Nicolas G. Droux, Sunay Tripathi, Darrin P. Johnson
  • Publication number: 20080002730
    Abstract: A method for sending packets. The method includes determining with which of a plurality of virtual serialization queues (VSQs) a first packet is associated, wherein a first application is attempting to issue the first packet, if a first VSQ of the plurality of VSQs has not exceeded a first bandwidth allocation, wherein the first VSQ is associated with the first packet and is associated with the first bandwidth allocation, then sending the first packet to the first VSQ, processing the first packet by a first virtual network stack (VNS) to obtain a first processed packet, wherein the first VSQ is associated with the first VNS, and sending the first processed packet to a physical network interface card (NIC) operatively connected to the first VNS. Alternatively, if the first VSQ has exceeded the first bandwidth allocation, then blocking the first application from issuing the first packet.
    Type: Application
    Filed: June 30, 2006
    Publication date: January 3, 2008
    Applicant: Sun Microsystems, Inc.
    Inventors: Thirumalai Srinivasan, Sunay Tripathi, Nicolas G. Droux
  • Publication number: 20080005360
    Abstract: A method for processing packets, where the method includes programming a hardware classifier in a network interface card (NIC) to send packets associated with a first packet destination to a non-standby hardware receive ring (HRR), programming a software ring to obtain packets from the non-standby HRR, programming the software ring to send packets for the first destination to a first software receive ring (SRR), wherein the first packet destination is associated with the first SRR, obtaining identifying information about a packet associated with a denial of service (DoS) attack, programming the hardware classifier, using the identifying information, to send the packet associated with the DoS attack to a standby HRR, and for each packet received by the hardware classifier determining to which of the standby HRR and the non-standby HRR to send the packet using the programming of the hardware classifier.
    Type: Application
    Filed: June 30, 2006
    Publication date: January 3, 2008
    Applicant: Sun Microsystems, Inc.
    Inventors: Kais Belgaied, Sunay Tripathi, Nicolas G. Droux
  • Publication number: 20080002682
    Abstract: 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.
    Type: Application
    Filed: June 30, 2006
    Publication date: January 3, 2008
    Applicant: Sun Microsystems, Inc.
    Inventors: Thirumalai Srinivasan, Sunay Tripathi, Nicolas G. Droux
  • Publication number: 20080002739
    Abstract: A method for indicating bandwidth for a virtual network interface card (NIC) includes receiving a bandwidth trigger for a bandwidth of a first virtual NIC operatively connected to a NIC, wherein the NIC is associated with a network bandwidth, obtaining a bandwidth allocation stored in the first virtual NIC in response to the bandwidth trigger, wherein the bandwidth allocation corresponds to the bandwidth of the first virtual NIC, and wherein the bandwidth allocation corresponds to a portion of the network bandwidth, and returning the bandwidth allocation to a component associated with the virtual NIC.
    Type: Application
    Filed: June 30, 2006
    Publication date: January 3, 2008
    Applicant: Sun Microsystems, Inc.
    Inventors: Nicolas G. Droux, Kais Belgaied, Sunay Tripathi
  • Publication number: 20080002704
    Abstract: A method of controlling bandwidth including receiving and classifying a packet, sending the packet to a hardware receive ring based on a classification of the packet, and sending, in accordance with an operating mode, the packet to a software receive ring, sending the packet from the software receive ring to a virtual network interface card, where the virtual network interface card is associated with a virtual machine, where the operating mode is adjusted to control the bandwidth consumed by the virtual machine.
    Type: Application
    Filed: June 30, 2006
    Publication date: January 3, 2008
    Applicant: Sun Microsystems, Inc.
    Inventors: Sunay Tripathi, Tim P. Marsland, Nicolas G. Droux
  • Publication number: 20080002663
    Abstract: A method for routing packets includes receiving an outbound packet issued by a first virtual machine, wherein the first virtual machine is located on a host, determining a packet destination associated with the outbound packet, querying a routing table for a routing entry corresponding to the packet destination, wherein the routing table comprises a first routing entry referencing an external host and a second routing entry referencing a second virtual machine, wherein the second virtual machine is located on the host, if the routing entry corresponding to the packet destination is the first routing entry, passing the packet to the external host, and if the routing entry corresponding to the packet destination is the second routing entry, passing the packet to the second virtual machine.
    Type: Application
    Filed: June 30, 2006
    Publication date: January 3, 2008
    Applicant: Sun Microsystems, Inc.
    Inventors: Sunay Tripathi, Erik Nordmark, Nicolas G. Droux
  • Publication number: 20080002736
    Abstract: A method for receiving incoming packets associated with a virtual Local Area Network (VLAN) includes receiving an incoming packet, classifying the incoming packet based on a VLAN tag embedded in the incoming packet, wherein the VLAN tag corresponds to the VLAN, and passing the incoming packet to a virtual network interface card (NIC) based on the VLAN tag.
    Type: Application
    Filed: June 30, 2006
    Publication date: January 3, 2008
    Applicant: Sun Microsystems, Inc.
    Inventors: Nicolas G. Droux, Sunay Tripathi, Kais Belgaied
  • Publication number: 20080002714
    Abstract: A method for dynamically changing a virtual network interface card (VNIC) binding. If the use of a hardware receive ring (HRR) is below the first threshold and the use of the software receive ring (SRR) is above the second threshold, then: binding the first VNIC to the SRR and the second VNIC to the HRR, removing the binding from the first VNIC to the HRR, removing the binding from the second VNIC to the SRR, and reprogramming a hardware classifier to send packets associated with the r VNIC to a second HRR and to send packets associated with the second VNIC to the HRR, reprogramming a software classifier to send packets associated with the first VNIC to the SRR, wherein the software classifier is associated with a soft ring (SR) and the SR is configured to obtain packets from the second HRR.
    Type: Application
    Filed: June 30, 2006
    Publication date: January 3, 2008
    Applicant: Sun Microsystems, Inc.
    Inventors: Kais Belgaied, Sunay Tripathi, Nicolas G. Droux
  • Publication number: 20080002683
    Abstract: A system including a plurality of virtual network interface cards (VNICs); and a Vswitch table associated with a virtual switch, wherein each entry in the Vswitch table is associated with one of the plurality of VNICs, wherein each of the plurality of VNICs is located on the host, and wherein each of the plurality of VNICs is associated with the virtual switch. The first VNIC in the plurality of VNICs is configured to receive a packet associated with a hardware address (HA), determine, using the HA, whether one of the plurality of entries in the Vswitch table is associated with the HA, send the packet to a VNIC associated with HA if one of the plurality of entries in the Vswitch table is associated with the HA, wherein the VNIC is one of the plurality of VNICs.
    Type: Application
    Filed: June 30, 2006
    Publication date: January 3, 2008
    Applicant: Sun Microsystems, Inc.
    Inventors: Nicolas G. Droux, Sunay Tripathi, Erik Nordmark
  • Publication number: 20080002701
    Abstract: A method for virtualizing a network interface card includes creating a first plurality of virtual NICs, assigning each of a plurality of receive rings on the network interface card (NIC) to one of the first plurality of virtual NICs, and if the number of virtual NICs is greater than the number of receive rings on the NIC, creating a first software ring corresponding to one of the plurality of receive rings on the NIC, creating a first plurality of software receive rings associated with the first software ring, creating a second plurality of virtual NICs, and assigning each of the first plurality of software receive rings to one of the second plurality of virtual NICs, wherein the plurality of receive rings is less than a sum of the first plurality of virtual NICs and the second plurality of virtual NICs.
    Type: Application
    Filed: June 30, 2006
    Publication date: January 3, 2008
    Applicant: Sun Microsystems, Inc.
    Inventors: Nicolas G. Droux, Sunay Tripathi, Kais Belgaied
  • Publication number: 20080002703
    Abstract: A system including a network interface card (NIC) associated with a Media Access Control (MAC) address and a host operatively connected to the NIC. The NIC includes a default hardware receive ring (HRR), a plurality of non-default HRRs, and a hardware classifier. The hardware classifier is configured to analyze an inbound packet using a destination Internet Protocol (IP) address and to send the inbound packet to one of the plurality of non-default HRRs if the inbound packet is a unicast packet, and to send the packet to the default HRR if the inbound packet is an inbound multi-recipient packet. The host includes a plurality of virtual NICs (VNICs) and an inbound software classifier. that includes a plurality of software receive rings (SRRs) and is configured to obtain inbound packets from the default HRR, and to determine to which of the plurality of SRRs to send a copy of the packet.
    Type: Application
    Filed: June 30, 2006
    Publication date: January 3, 2008
    Applicant: Sun Microsystems, Inc.
    Inventors: Sunay Tripathi, Nicolas G. Droux, Kais Belgaied
  • Publication number: 20080005441
    Abstract: A system includes a first and a second network component, and a bridge. The bridge, which resides a Media Access Control (MAC) layer of a host, includes a bridge component, a first virtual network interface card (VNIC) and a second VNIC, wherein the first VNIC is associated with the first network component and the second VNIC is associated with the second network component. Further, the bridge component is configured to send packets received from the first network component to the second network component and to send packets received from the second network component to the first network component.
    Type: Application
    Filed: June 30, 2006
    Publication date: January 3, 2008
    Applicant: Sun Microsystems, Inc.
    Inventors: Nicolas G. Droux, Sunay Tripathi, Kais Belgaied, Erik Nordmark
  • Publication number: 20080002731
    Abstract: A system for processing a packet, including a network interface card (NIC), including a plurality of hardware receive rings, a classifier configured to classify the packet and send the packet to one of the plurality of hardware receive rings, and a host, operatively connected to the NIC, including a virtual network stack including a virtual serialization queue, a virtual network interface card (VNIC) associated with the virtual serialization queue, a device driver associated with the VNIC and configured to store a function pointer and a token associated with one of the plurality of hardware receive rings, where the VNIC is configured to perform at least one selected from a group consisting of enabling bypass mode and disabling bypass mode by changing the function pointer stored in the device driver, where the function pointer is used to send the packet to the virtual serialization queue if the bypass mode is enabled.
    Type: Application
    Filed: June 30, 2006
    Publication date: January 3, 2008
    Applicant: Sun Microsystems, Inc.
    Inventors: Sunay Tripathi, Nicolas G. Droux, Eric T. Cheng