Patents by Inventor Wilson Parkhurst Snyder, II

Wilson Parkhurst Snyder, II 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: 20170097895
    Abstract: Method and system embodying the method for input/output value determination at a processor core, comprising generating an I/O instruction comprising at least a physical or a virtual address; comparing the address with a relevant database of I/O devices addresses. When the comparing is successful determining the I/O device or a state on the I/O device to receive the I/O instruction in accordance with the address; setting a value of a first register to a value identifying the determined I/O device or the state on the I/O device; predicting a value to be set in a second register in accordance with the address; and setting a value of a third register. Providing I/O instruction other than a request I/O instruction to the I/O device or the state on the I/O device, which sets a register to a value according to the I/O instruction and reports the value to the processor core.
    Type: Application
    Filed: October 4, 2015
    Publication date: April 6, 2017
    Inventors: Wilson Parkhurst Snyder, II, Michael Sean Bertone
  • Patent number: 9513926
    Abstract: A tag mask generation method comprises receiving a section_selector flag indicating whether a tag mask for a section of a network packet is to be generated; receiving from a parser a parse information for the network packet, wherein the parse information includes a section_pointer that indicates a location of the section in the network packet; generating a pointer based on the section_pointer when the section_selector indicates that the tag mask for the section is to be generated; receiving a base mask for the section; and generating the tag mask via a shifter by shifting the base mask by the amount indicated by the pointer. The parse information may further include a section_pointer_valid flag indicating whether the section is included in the network packet, and the method may further comprise including the tag mask in a combined tag mask when the section_pointer_valid flag indicates that the section is included in the network packet.
    Type: Grant
    Filed: January 8, 2014
    Date of Patent: December 6, 2016
    Assignee: Cavium, Inc.
    Inventors: Wilson Parkhurst Snyder, II, Nicholas New Jamba
  • Patent number: 9491099
    Abstract: A method and a system embodying the method for information lookup request processing at a look-aside processor unit entailing storing a received lookup transaction request in a first buffer; rebuilding the lookup transaction request into a request packet; transmitting the request packet; receiving a packet; determining whether the received packet is a response packet or an exception packet; and processing the received packet in accordance with the determining is disclosed. Furthermore, a method and a system embodying the method for exception packet processing at a look-aside processor unit entailing storing at least one received lookup transaction request in a first buffer; receiving a packet; determining that the received packet is an exception packet; and associating the exception packet with one of the at least one stored lookup transaction request in accordance with an identifier of the first buffer is disclosed.
    Type: Grant
    Filed: December 27, 2013
    Date of Patent: November 8, 2016
    Assignee: Cavium, Inc.
    Inventors: Wilson Parkhurst Snyder, II, Steven Craig Barner, Richard Eugene Kessler
  • Patent number: 9460033
    Abstract: A method and a system embodying the method for interrupt collecting an reporting, comprising: storing for each of at least one interrupt a status indicator, an enable status, and an interrupt delivery information in a first structure; storing for each of the at least one interrupt at least an indicator of one or more entities to execute an interrupt handler routine in a second structure; and reporting one of the at least one interrupt to the one or more entities to execute an interrupt handler routine designated in accordance with the status indicator, the enable status, the interrupt delivery information, and the at least one indicator, is disclosed.
    Type: Grant
    Filed: December 27, 2013
    Date of Patent: October 4, 2016
    Assignee: Cavium, Inc.
    Inventors: Wilson Parkhurst Snyder, II, Lei Tian
  • Patent number: 9379992
    Abstract: A method and a system embodying the method for virtualization of a quality of service, comprising associating a packet received at an interface with an aura via an aura identifier; determining configuration parameters for the aura; determining a pool for the aura; determining the state of the pool resources, the resources comprising a level of buffers available in the pool and a level of buffers allocated to the aura; and determining a quality of service for the packet in accordance with the determined state of the pool and the configuration parameters for the aura, is disclosed.
    Type: Grant
    Filed: December 25, 2013
    Date of Patent: June 28, 2016
    Assignee: CAVIUM, INC.
    Inventors: Wilson Parkhurst Snyder, II, Thomas Frederick Hummel, Anna Karen Kujtkowski
  • Publication number: 20160182692
    Abstract: A system network switching with layer 2 switch communicatively coupled co-resident data-plane and network interface controllers embodying a method for, receiving a packet from a communication network at the layer 2 switch; parsing the packet; and determining in accordance with a content of the parsed packet whether the packet is to be switched to one of one or more medium access controllers, or one of one or more packet input processors, or one of one or more network interface controllers of a network interface resource comprising the one or more packet input processors, one or more packet output processors, the one or more network interface controllers, and the layer 2 switch, implemented on a chip are disclosed.
    Type: Application
    Filed: December 19, 2014
    Publication date: June 23, 2016
    Inventor: Wilson Parkhurst Snyder, II
  • Patent number: 9363193
    Abstract: A method and a system embodying the method for dynamically allocating context for Transmission Control Protocol (TCP) reassembly, comprising providing a fixed plurality of global common TCP contexts; reserving for each of one or more virtual network interface card(s) one or more TCP context(s) out of the fixed plurality of the global common TCP contexts; and allocating to a virtual network interface card from the one or more virtual network interface card(s) a TCP context from the reserved one or more TCP contexts when a reassemble able TCP packet is received by the virtual network interface card, is disclosed.
    Type: Grant
    Filed: November 19, 2013
    Date of Patent: June 7, 2016
    Assignee: Cavium, Inc.
    Inventors: Wilson Parkhurst Snyder, II, Carl Richard Gyllenhammer
  • Publication number: 20160142320
    Abstract: A method and a system embodying the method for load balancing of a received a packet based network traffic, comprising: receiving a packet at a software defined network switch; determining information pertaining to uniqueness of a packet flow for the received packet; providing the determined information and the received packet to a network interface controller; and processing the received packet at the network interface controller in accordance with the provided determined information, are disclosed.
    Type: Application
    Filed: November 14, 2014
    Publication date: May 19, 2016
    Applicant: Cavium, Inc.
    Inventors: Carl Richard Gyllenhammer, Wilson Parkhurst Snyder, II, Philip Romanov
  • Publication number: 20160142386
    Abstract: A method and a system embodying the method for a multi-entity secure software transfer, comprising, configuring a communication interface controller at each trusted hardware entity of a first hardware entity and a second hardware entity to disallow all external access except a communication link configuration access; establishing the communication link between the first hardware entity and the second hardware entity; configuring write access from the second hardware entity to only a first storage at the first hardware entity; and writing the secure software received from the second hardware entity via the communication link to the first storage at the first hardware entity, are disclosed.
    Type: Application
    Filed: November 14, 2014
    Publication date: May 19, 2016
    Applicant: Cavium, Inc.
    Inventor: Wilson Parkhurst Snyder, II
  • Publication number: 20160142520
    Abstract: A system with co-resident data-plane and network interface controllers embodying a method for network switching of a data packet incoming from a network at a packet input processor portion of a network interface resource comprising the packet input processor, a packet output processor, and a network interface controller, implemented on a chip, to a target entity, is disclosed. Additionally, the system embodying a method for network switching of a data packet outgoing from an internal facing interface of a network interface controller portion of the network interface resource to a network is disclosed.
    Type: Application
    Filed: November 14, 2014
    Publication date: May 19, 2016
    Applicant: Cavium, Inc.
    Inventors: Wilson Parkhurst Snyder, II, Muhammad Raghib Hussain
  • Publication number: 20160112264
    Abstract: A new approach is proposed that contemplates systems and methods to support flexible reconfiguration of a network chip by an external entity, such as a baseboard management controller (BMC), while maintaining a secured environment for the chip so that it can booted securely. Specifically, the network chip is configured to designate one or more of its networking ports to the BMC and allow the BMC to configure the designated networking ports without violating the secure areas of the network chip. To this end, the network chip is configured to allow the BMC to access a plurality of registers of the network chip via an Network Controller Sideband Interface (NC-SI) block of the network chip by issuing a plurality NC-SI compliant commands. By configuring the designated networking ports, the BMC is configured to establish a data path to a management software of a platform that includes the network chip though the designated networking ports.
    Type: Application
    Filed: September 30, 2015
    Publication date: April 21, 2016
    Inventors: ISAM AKKAWI, Darren Braun, Wilson Parkhurst Snyder, II, Bryan Chin
  • Patent number: 9313029
    Abstract: A method and a system embodying the method for generating an opaque data comprising a stream identifier, comprising encrypting at least part of a stream identifier with a first secret random data to provide an encrypted stream identifier; generating a digest by applying a cryptographic hash to at least the at least the part of the stream identifier; and combining the encrypted stream identifier with the digest, is disclosed Additionally, a method and a system embodying the method for reconstructing a stream identifier from the opaque data indicating permission to access a region of a storage at an entity that generated the opaque data is disclosed.
    Type: Grant
    Filed: December 15, 2013
    Date of Patent: April 12, 2016
    Assignee: CAVIUM, INC.
    Inventor: Wilson Parkhurst Snyder, II
  • Patent number: 9306916
    Abstract: A method and a system embodying the method for receiving a remote direct memory access packet comprising an opaque data, a virtual address, and a payload at a virtual network interface card that generated the opaque data; reconstructing a stream identifier by separating the opaque data into an encrypted stream identifier and a first digest; decrypting the encrypted stream identifier; verifying the decrypted stream identifier using the first digest; providing the verified stream identifier to a system memory management unit; and mapping the virtual address and the provided stream identifier by the system memory management unit to a physical address, is disclosed.
    Type: Grant
    Filed: December 25, 2013
    Date of Patent: April 5, 2016
    Assignee: CAVIUM, INC.
    Inventor: Wilson Parkhurst Snyder, II
  • Patent number: 9307057
    Abstract: Methods and systems are provided for operating a SIMD packet parsing cluster, wherein the cluster includes a plurality of M packet parsing engines 1 to M, and the cluster further includes a shared memory and an instruction memory storing a plurality of instructions to be performed by each of the engines, and wherein the instructions include one or more memory accessing instructions that require accessing the shared memory. The method comprises transmitting the instructions to the engines for instructions to be executed by the engines; for each of the engines 2 to M, delaying execution of each of the memory accessing instructions by a delay time compared to a previous engine; and each one of the engines performing one of the memory accessing instructions at a time that the other engines are not performing one of the memory accessing instructions.
    Type: Grant
    Filed: January 8, 2014
    Date of Patent: April 5, 2016
    Assignee: Cavium, Inc.
    Inventors: Wilson Parkhurst Snyder, II, Daniel Adam Katz
  • Publication number: 20160034288
    Abstract: A method and a system embodying the method for a data plane virtualization, comprising assigning each of at least one data plane a unique identifier; providing a request comprising an identifier of one of the at least one data plane together with an identifier of a virtual resource assigned to a guest; determining validity of the provided request in accordance with the identifier of the one of the at least one data plane and the identifier of the virtual resource assigned to the guest; and processing the request based on the determined validity of the request are disclosed.
    Type: Application
    Filed: July 31, 2014
    Publication date: February 4, 2016
    Applicant: Cavium, Inc.
    Inventor: Wilson Parkhurst Snyder, II
  • Publication number: 20150222698
    Abstract: A method and a system embodying the method for work request arbitration, comprising receiving a work request, the work request indicating one or more groups from a plurality of groups; determining at least one of a plurality of parameters in accordance with the received work request; determining eligibility to provide work among the one or more groups that have work in a work queue in accordance with a first set of the plurality of parameters; and selecting one of the determined eligible groups to provide the work in accordance with a second set of the plurality of parameters is disclosed.
    Type: Application
    Filed: February 3, 2014
    Publication date: August 6, 2015
    Applicant: CAVIUM, INC.
    Inventors: Wilson Parkhurst Snyder, II, Richard Eugene Kessler, Daniel Edward Dever, Nitin Dhiroobhai Godiwala, David Kravitz
  • Publication number: 20150220872
    Abstract: A method and a system embodying the method for processing conflicting work, comprising: receiving a work request, the work request indicating one or more groups from a plurality of groups; finding work by arbitrating among a plurality of queues of the one or more groups; determining whether the found work conflicts with another work; returning the found work when the determination is negative; and adding the found work into a tag-chain when the determination is affirmative is disclosed.
    Type: Application
    Filed: February 3, 2014
    Publication date: August 6, 2015
    Applicant: CAVIUM, INC.
    Inventors: Wilson Parkhurst Snyder, II, Richard Eugene Kessler, Daniel Edward Dever, David Kravitz
  • Publication number: 20150220360
    Abstract: A method and a system embodying the method for pre-fetching and processing work for processor cores in a network processor, comprising requesting pre-fetch work by a requestor; determining that the work may be pre-fetched for the requestor; searching for the work to pre-fetch; and pre-fetching the found work into one of one or more pre-fetch work-slots associated with the requestor is disclosed.
    Type: Application
    Filed: February 3, 2014
    Publication date: August 6, 2015
    Applicant: CAVIUM, INC.
    Inventors: Wilson Parkhurst Snyder, II, Richard Eugene Kessler, Daniel Edward Dever, Nitin Dhiroobhai Godiwala
  • Publication number: 20150195385
    Abstract: A method for parsing network packets via one or more clusters configured to parse network packets comprises receiving one or more packets to be parsed; determining a candidate cluster of the one or more clusters for parsing the one or more packets; transmitting the one or more packets to the candidate cluster; launching the candidate cluster to parse the one or more packets when a launch condition is met; and receiving parse results for the one or more packets from the candidate cluster. The launch condition may be met after transmitting the one or more packets meets a fraction of a parsing capacity of the candidate cluster. The fraction may be one such that the transmitting the one or more packets meets a parsing capacity of the candidate cluster. The launch condition may also be met when a time elapsed since a previous cluster was launched reaches a delay limit.
    Type: Application
    Filed: January 8, 2014
    Publication date: July 9, 2015
    Applicant: CAVIUM, INC.
    Inventors: Wilson Parkhurst Snyder, II, Daniel Adam Katz
  • Publication number: 20150195383
    Abstract: A parser for parsing network packets comprises a plurality of clusters, each cluster comprising one or more engines; a launcher configured to determine a candidate cluster of the plurality of clusters to parse a subset of a plurality of received packets; a loader configured to transmit the subset of the plurality of packets to the candidate cluster, wherein each of the one or more engines in the candidate cluster is configured to parse and derive parse results for a packet of the subset of the plurality of packets; and an unloader configured to receive from the candidate cluster the parse results for the subset of the plurality of packets and to transmit that information to a target.
    Type: Application
    Filed: January 8, 2014
    Publication date: July 9, 2015
    Applicant: CAVIUM, INC.
    Inventors: Wilson Parkhurst Snyder, II, Daniel Adam Katz