Patents by Inventor Darrin P. Johnson

Darrin P. Johnson 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).

  • Patent number: 8194667
    Abstract: A method for obtaining a capability from a network interface card (NIC), involving sending a query to the NIC for the capability, obtaining the capability from the NIC in response to the query, sending the capability to a virtual NIC, and sending the capability from the virtual NIC to a virtual network stack associated with the virtual NIC, wherein the capability is used by the virtual network stack to process packets.
    Type: Grant
    Filed: March 30, 2007
    Date of Patent: June 5, 2012
    Assignee: Oracle America, Inc.
    Inventors: Kais Belgaied, Darrin P. Johnson
  • Patent number: 8184631
    Abstract: One embodiment of the present invention provides a system that specifies a MAC identifier for a network-interface-device in a computing device. In this system, the network-interface-device is configured to connect to a network though a port. During operation, the network-interface-device receives data packets through this port, and accepts a data packet if the data packet contains a destination that matches the MAC identifier for the network-interface-device, which can be a universally-administered MAC identifier. The system is also configured to determine whether the network-interface-device supports one or more additional MAC identifiers. If so, the system adds and activates an additional MAC identifier. By activating the newly-added MAC identifier in the computing device, the system allows the network-interface-device to logically separate data packets based on MAC identifiers.
    Type: Grant
    Filed: January 22, 2007
    Date of Patent: May 22, 2012
    Assignee: Oracle America, Inc.
    Inventors: Rajagopal Kunhappan, Darrin P. Johnson, Sunay Tripathi
  • Patent number: 8175271
    Abstract: A method for implementing a security protocol, involving receiving a packet from a network connection, obtaining an identifier for one of a plurality of security association database (SADB) partitions associated with the packet, wherein each of the plurality of SADB partitions is associated with one of a plurality of packet destinations, applying a security association from the one of the plurality of SADB partitions to the packet, and sending the packet to the one of the plurality of packet destinations associated with the SADB partition, wherein the packet is processed at the one of the plurality of packet destinations.
    Type: Grant
    Filed: March 30, 2007
    Date of Patent: May 8, 2012
    Assignee: Oracle America, Inc.
    Inventors: Kais Belgaied, Darrin P. Johnson
  • Patent number: 8161458
    Abstract: Techniques for efficiently isolating software regressions are provided. A system test tool determines that a particular regression is present in a particular build of a software system, but not in a baseline build. Using historical data, the tool determines, for each of a plurality of intermediate builds between these two builds, a likelihood that that intermediate build introduced the particular regression. A particular intermediate build can be identified as a build to be tested. Here, the particular intermediate build comprises a plurality of layered putbacks, each of which putbacks comprises one or more code changes in the software system. The tool determines, for each putback, a likelihood that that putback introduced the particular regression. A particular putback in the plurality of putbacks may be selected as a putback to be tested. In some embodiments, the particular putback is the putback that has the greatest likelihood of introducing the particular regression.
    Type: Grant
    Filed: September 27, 2007
    Date of Patent: April 17, 2012
    Assignee: Oracle America, Inc.
    Inventors: Darrin P. Johnson, Damien Farnham, Fintan Ryan, Sean A. McGrath
  • Patent number: 8149826
    Abstract: In general, the invention relates to a method for classifying an application. The method includes receiving, at a kernel, a plurality of packets from the application, wherein the application is executing outside of the kernel, obtaining a first measurement from the plurality of packets associated with a first parameter using a first internal estimator in the kernel, applying a first statistical technique to the first measurement to generate a first estimate of the first parameter, and obtaining a classification of the application based on the first estimate. Further, the classification of the application is used to optimize a network connection associated with the application.
    Type: Grant
    Filed: December 14, 2006
    Date of Patent: April 3, 2012
    Assignee: Oracle America, Inc.
    Inventors: Cesar A. C. Marcondes, Anders D. Persson, Darrin P. Johnson
  • Patent number: 8135907
    Abstract: A method for wear level-based allocation in a storage pool. The method includes receiving a first request to write a first data item in a storage pool, where the storage pool includes a number of physical locations associated with the storage devices, and where each of the storage devices includes metadata regarding a level of wear of the storage device. The method further includes determining a first target physical location selected from the plurality of physical locations by using a wear-level selection policy and a wear cost for each of the storage devices, where the wear cost is determined based on a type of the storage device. The method further includes allocating a first data block to the first target physical location writing the first data block to the first target physical locations, wherein the first data block comprises a first portion of the first data item.
    Type: Grant
    Filed: June 30, 2008
    Date of Patent: March 13, 2012
    Assignee: Oracle America, Inc.
    Inventors: William H. Moore, Darrin P. Johnson, Eric C. Saxe
  • Patent number: 8117598
    Abstract: Techniques for efficiently isolating software regressions are provided. In one embodiment, it is determined that a particular regression is present in a particular build of a software system. A set of candidate code components that may have caused the particular regression is identified. In accordance with an order established based on historical data for the software system, one or more intermediate builds each involving some subsets of the candidate code components may be tested to identify a set of suspect code components that caused the particular regression. For each candidate code component that is not in the set of suspect code component, a likelihood factor associated with that candidate code component is decremented.
    Type: Grant
    Filed: September 27, 2007
    Date of Patent: February 14, 2012
    Assignee: Oracle America, Inc.
    Inventors: Darrin P. Johnson, Damien Farnham, Fintan Ryan, Sean A. McGrath
  • Patent number: 8102852
    Abstract: A method for timestamping data packets from a network involves receiving a first data packet from the network, obtaining, from a clock, a timestamp indicating an arrival time of the first data packet, where a network interface controller (NIC) includes the clock, providing the timestamp and the first data packet to a client operatively connected to the NIC, computing a network property using the timestamp, selecting a network protocol based on the network property, and transmitting a second data packet via the NIC using the network protocol.
    Type: Grant
    Filed: December 14, 2006
    Date of Patent: January 24, 2012
    Assignee: Oracle America, Inc.
    Inventors: Cesar A. C. Marcondes, Anders D. Persson, Darrin P. Johnson
  • Patent number: 8095728
    Abstract: A method for retrieving a logical block, including receiving a request to read the logical block, and obtaining metadata associated with the logical block, wherein the metadata includes a replication type used to store the logical block and physical block locations in a storage pool for each physical block associated with the logical block. The method further includes obtaining power state information including a power state for the storage devices specified in the physical block locations, selecting a first set of physical block locations using the metadata, the power state information, and a power-usage selection policy, and generating I/O requests, where each I/O request specifies one of the first set of physical block locations. The method further includes issuing the I/O requests, receiving physical blocks in response to the I/O requests, and constructing the logical block using the physical blocks.
    Type: Grant
    Filed: April 18, 2008
    Date of Patent: January 10, 2012
    Assignee: Oracle America, Inc.
    Inventors: William H. Moore, Darrin P. Johnson, George R. Wilson
  • Patent number: 8087066
    Abstract: A method for securing a commercial grid network involves receiving a lease request from a client to lease a computing resource selected from multiple computing resources in the commercial grid network, mapping a unique identifier of the client to a security label selected from multiple unmapped security labels to obtain a client-label mapping based on the lease request, mapping a unique identifier of the computing resource to the security label to obtain a resource-label mapping based on the lease request, storing the client-label mapping and the resource-label mapping in a security label repository to obtain stored security label mappings, and authenticating, by the commercial grid network, an access request from the client to the computing resource using the stored security label mappings.
    Type: Grant
    Filed: April 12, 2007
    Date of Patent: December 27, 2011
    Assignee: Oracle America, Inc.
    Inventors: Kais Belgaied, Darrin P. Johnson
  • Patent number: 8006297
    Abstract: A network interface card (NIC) includes a security association database (SADB) comprising a plurality of security associations (SAs), a cryptographic offload engine configured to decrypt a packet using one of the plurality of SAs, a security policy database (SPD) comprising a plurality of security policies (SPs) and a plurality of filter policies, and a policy engine configured to determine an admittance of the packet using one of the plurality of SPs from the SPD and apply one of the plurality of filter policies to the packet.
    Type: Grant
    Filed: April 25, 2007
    Date of Patent: August 23, 2011
    Assignee: Oracle America, Inc.
    Inventors: Darrin P. Johnson, Kais Belgaied, Darren J. Reed
  • Patent number: 8000239
    Abstract: In general, the invention relates to a method for managing a network connection. The method includes receiving a request for the network connection from a host, where the network connection is associated with an overlay network. The method further includes sending, in response to the request, a first available bandwidth per flow to the host, and receiving packets from the host. The packets received from the host are associated with the network connection and the initial packet transmission rate of the packets over the network connection is based on the first available bandwidth per flow. Further, the first available bandwidth per flow is obtained by probing a first router in the overlay network to obtain a first available bandwidth associated with the first router.
    Type: Grant
    Filed: December 14, 2006
    Date of Patent: August 16, 2011
    Assignee: Oracle America, Inc.
    Inventors: Cesar A. C. Marcondes, Anders D. Persson, Darrin P. Johnson
  • Publication number: 20110179424
    Abstract: A system for self-tuning hardware resources includes a processor, a hardware resource, an operating system (OS), a metric monitoring unit (MMU), and a configuration engine (CE). The OS determines: the hardware resource; a metric for monitoring the hardware resource; a hardware resource management policy for the hardware resource; and a primary and secondary sub-ranges for the metric. The OS sends a hardware resource management policy directive to the CE. The MMU monitors the hardware resource to obtain data for the metric. The CE receives the hardware resource management policy directive, determines the primary and secondary sub-ranges from the hardware resource management policy directive, obtains data for the metric from the MMU. When data is outside the primary sub-range and inside the secondary sub-range, the CE determines and executes a hardware resource optimization routine to bring hardware resource utilization into compliance with the primary sub-range.
    Type: Application
    Filed: January 15, 2010
    Publication date: July 21, 2011
    Applicant: SUN MICROSYSTEMS, INC.
    Inventors: Eric C. Saxe, Darrin P. Johnson
  • Publication number: 20110178997
    Abstract: A computer readable medium having software instructions that, when executed, perform a method for preserving data stored in a file system with a plurality of files. The method involves determining whether storage capacity of the file system has reached a threshold level, wherein the threshold level is stored in at least one of a plurality of size-reducing policies, obtaining a criterion from the at least one size-reducing policy, identifying a subset of the plurality of files that match the criterion, accessing metadata of each of the identified subset of files, wherein the metadata of each of the identified subset of files comprises at least one option for reducing a size of the file, and performing a size-reducing action to reduce a size of each of the identified subset of files based on the option for reducing the size of each of the identified subset of files and the criterion.
    Type: Application
    Filed: January 15, 2010
    Publication date: July 21, 2011
    Applicant: SUN MICROSYSTEMS, INC.
    Inventors: Darrin P. Johnson, William H. Moore, Eric C. Saxe
  • Patent number: 7984193
    Abstract: In general, in one aspect, the invention relates to a method for conserving power. The method includes determining a first network connection speed for a network interface card (NIC), configuring the NIC to operate at the first network connection speed, processing, after the configuration, packets received by the NIC, obtaining a bandwidth utilization of the NIC, determining, using a power management policy, a second network connection speed for the NIC based on the bandwidth utilization when the bandwidth utilization is outside a threshold range, and configuring the NIC to operate at the second network connection speed.
    Type: Grant
    Filed: September 27, 2007
    Date of Patent: July 19, 2011
    Assignee: Oracle America, Inc.
    Inventors: William H. Moore, Darrin P. Johnson, Randall S. Fishel
  • Publication number: 20110173426
    Abstract: A method for transferring execution to a subsequent operating system. The method includes rebooting a computer system. Rebooting the computer system includes initializing an in-kernel boot loader. The in-kernel boot loader executes in a kernel of an initial operating system. Rebooting the computer system further includes populating, by the in-kernel boot loader, an initialization data structure using system data gathered during the execution of the initial operating system, loading, by the in-kernel boot loader, the subsequent operating system, and transferring control of the computer system from the initial operating system to the subsequent operating system. The subsequent operating system accesses the initialization data structure to identify available hardware. The method further includes executing the subsequent operating system on the available hardware of the computer system.
    Type: Application
    Filed: January 12, 2010
    Publication date: July 14, 2011
    Applicant: SUN MICROSYSTEMS, INC.
    Inventors: Sherry Qianhong Moore, Konstantin Ananyev, Darrin P. Johnson
  • Patent number: 7979648
    Abstract: Methods and apparatus provide for a Dynamic Interleaver to modify the interleaving distribution spanning physical memory modules. Specifically, dynamic interleaving provides the ability to increase the number of interleaved physical memory modules when a current interleaved group of memory locations is experiencing heavy use. By increasing the number of interleaved memory locations, a system can make optimal use of memory by allowing more parallel accesses to physical memory during the period of heavy utilization. However, if the current interleaved group of memory locations experience low use, the Dynamic Interleaver can choose to interleave across fewer physical memory modules and apply power management techniques to those memory locations that are no longer being accessed. Prior to “re-interleaving” interleaved memory locations, the Dynamic Interleaver migrates data out of the current interleaved memory locations.
    Type: Grant
    Filed: May 30, 2008
    Date of Patent: July 12, 2011
    Assignee: Oracle America, Inc.
    Inventors: Eric C. Saxe, Sherry Q. Moore, Darrin P. Johnson
  • Patent number: 7936784
    Abstract: A method for using offloaded transport layer protocols involves signaling a network interface controller (NIC) with a signal to use one of multiple transport layer protocols embedded in the NIC, and transmitting a data packet via the NIC using the transport layer protocol.
    Type: Grant
    Filed: May 14, 2010
    Date of Patent: May 3, 2011
    Assignee: Oracle America, Inc.
    Inventors: Cesar A. C. Marcondes, Anders D. Persson, Darrin P. Johnson
  • Patent number: 7924719
    Abstract: One embodiment of the present invention provides a system that parallelizes the TCP-related actions of a network connection between two computer systems during a data transfer between the two computer systems. During operation, the first computer system partitions the data into two or more data segments, and assigns the data segments to multiple processing elements. These multiple processing elements subsequently prepare and send their assigned data segments to the second computer system in parallel using TCP.
    Type: Grant
    Filed: October 10, 2007
    Date of Patent: April 12, 2011
    Assignee: Oracle America, Inc.
    Inventors: Bruce W. Curtis, Darrin P. Johnson, James P. Hughes
  • Patent number: 7912926
    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: Grant
    Filed: July 20, 2006
    Date of Patent: March 22, 2011
    Assignee: Oracle America, Inc.
    Inventors: Kais Belgaied, Erik Nordmark, Nicolas G. Droux, Sunay Tripathi, Darrin P. Johnson