Patents by Inventor Marcelino M. Dignum

Marcelino M. Dignum 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: 8913613
    Abstract: A system and method for classifying a multicast packet, involving receiving, at a classification engine, the multicast packet sent from a packet source; determining, based on a source address of the multicast packet, a Direct Memory Access (DMA) filter vector; determining, based on a destination address of the multicast packet, a DMA target vector, where the DMA target vector includes a listing of DMA channels which are available to transfer the multicast packet; determining a DMA final vector based on the DMA filter vector and the DMA target vector; and sending the multicast packet according to the DMA final vector.
    Type: Grant
    Filed: February 16, 2011
    Date of Patent: December 16, 2014
    Assignee: Oracle International Corporation
    Inventors: Arvind Srinivasan, Marcelino M. Dignum
  • Patent number: 8634415
    Abstract: A system and method for routing network traffic for a blade server chassis, involving receiving a packet by a network express manager (NEM); obtaining the L2 address, the L3 address, and the L4 address from the packet; obtaining a first mapping that associates the L2 address with a network function; obtaining a second mapping that associates the network function with a configuration; generating a key based on the network function, the L3 address, and the L4 address; obtaining a third mapping that associates the key with a policy; making a determination to transmit the packet based on the policy; based on the determination, selecting a direct memory access (DMA) engine for transmitting the packet based on the configuration; and based on the determination, transmitting the packet to a blade using the DMA engine and the network function.
    Type: Grant
    Filed: February 16, 2011
    Date of Patent: January 21, 2014
    Assignee: Oracle International Corporation
    Inventors: Arvind Srinivasan, Marcelino M. Dignum
  • Patent number: 8625448
    Abstract: A system and method for validating network traffic routing within a blade chassis, involving generating a first packet for sending to a first packet receiver by a first route; inserting a first session identifier into a payload of the first packet, where the first session identifier identifies a first session of the first packet receiver; sending the first packet to a packet classifier; sending a first copy packet to a first expect queue, where the first copy packet is a duplicate of the first packet; receiving the first packet by the packet classifier; classifying the first packet by the packet classifier to obtain a first classified packet; extracting the first session identifier from the first classified packet to obtain a first extracted session identifier; and determining whether the first extracted session identifier matches the first session identifier.
    Type: Grant
    Filed: February 16, 2011
    Date of Patent: January 7, 2014
    Assignee: Oracle International Corporation
    Inventors: Arvind Srinivasan, Marcelino M. Dignum
  • Patent number: 8606975
    Abstract: Methods and apparatus are provided for managing interrupts within a virtualizable communication device. Through virtualization, one port of the device may be able to support multiple hosts (e.g., computers) and multiple functions operating on each host. Any number of interrupt resources may be allocated to the supported functions, and may include receive/transmit DMAs, receive/transmit mailboxes, errors, and so on. Resources may migrate from one function to another, such as when a function requests additional resources. Each function's set of allocated resources is isolated from other functions' resources so that their interrupts may be managed and reported in a non-blocking manner. If an interrupt cannot be immediately reported to a destination host/function, the interrupt may be delayed, retried, cancelled or otherwise handled in a way that avoids blocking interrupts to other hosts and functions.
    Type: Grant
    Filed: May 21, 2010
    Date of Patent: December 10, 2013
    Assignee: Oracle International Corporation
    Inventors: Arvind Srinivasan, Marcelino M. Dignum
  • Patent number: 8392824
    Abstract: A method and apparatus for accelerating processing of a structured document. A hardware XML accelerator includes one or more processors (e.g., CMT processors), one or more hardware XML parser units, one or more cryptographic units and various interfaces (e.g., to memory, a network, a communication bus). An XML document may be processed in its entirety or may be parsed in segments (e.g., as it is received). A parser unit parses a document or segment character by character, validates characters, assembles tokens from the document, extracts data, generates token headers (to describe tokens and data) and forwards the token headers and data for consumption by an application. A cryptographic unit may enforce web security, XML security or some other security scheme, by providing encryption/decryption functionality, computing digital signatures, etc. Software processing, bus utilization and latencies (e.g.
    Type: Grant
    Filed: March 24, 2010
    Date of Patent: March 5, 2013
    Assignee: Oracle America, Inc.
    Inventors: Jochen Behrens, Marcelino M. Dignum, Wayne F. Seltzer, William T. Zaumen, John P. Petry, Santiago M. Pericas-Geertsen, Biswadeep Nag
  • Patent number: 8369325
    Abstract: Some embodiments of the present invention provide a system for packet classification and spreading in a virtualized system. The system can use information in a packet's header to determine a destination system-image in the virtualized system, and a packet-spreading policy for the destination system-image. The system can determine a key using the information in a packet's header. Alternatively, the system can hash the information in the packet's header to obtain an index value. Next, the system can use the key or the index value to perform a lookup in a table which associates keys or index values with system images and/or packet-spreading policies. Once the destination system-image and the packet-spreading policy are determined, the system can deliver the packet to a thread on the destination system-image according to the packet-spreading policy.
    Type: Grant
    Filed: June 30, 2009
    Date of Patent: February 5, 2013
    Assignee: Oracle America, Inc.
    Inventors: Arvind Srinivasan, Michael F. Speer, Marcelino M. Dignum
  • Publication number: 20120207156
    Abstract: A system and method for routing network traffic for a blade server chassis, involving receiving a packet by a network express manager (NEM); obtaining the L2 address, the L3 address, and the L4 address from the packet; obtaining a first mapping that associates the L2 address with a network function; obtaining a second mapping that associates the network function with a configuration; generating a key based on the network function, the L3 address, and the L4 address; obtaining a third mapping that associates the key with a policy; making a determination to transmit the packet based on the policy; based on the determination, selecting a direct memory access (DMA) engine for transmitting the packet based on the configuration; and based on the determination, transmitting the packet to a blade using the DMA engine and the network function.
    Type: Application
    Filed: February 16, 2011
    Publication date: August 16, 2012
    Applicant: ORACLE INTERNATIONAL CORPORATION
    Inventors: Arvind Srinivasan, Marcelino M. Dignum
  • Publication number: 20120207039
    Abstract: A system and method for validating network traffic routing within a blade chassis, involving generating a first packet for sending to a first packet receiver by a first route; inserting a first session identifier into a payload of the first packet, where the first session identifier identifies a first session of the first packet receiver; sending the first packet to a packet classifier; sending a first copy packet to a first expect queue, where the first copy packet is a duplicate of the first packet; receiving the first packet by the packet classifier; classifying the first packet by the packet classifier to obtain a first classified packet; extracting the first session identifier from the first classified packet to obtain a first extracted session identifier; and determining whether the first extracted session identifier matches the first session identifier.
    Type: Application
    Filed: February 16, 2011
    Publication date: August 16, 2012
    Applicant: ORACLE INTERNATIONAL CORPORATION
    Inventors: Arvind Srinivasan, Marcelino M. Dignum
  • Publication number: 20120207158
    Abstract: A system and method for classifying a multicast packet, involving receiving, at a classification engine, the multicast packet sent from a packet source; determining, based on a source address of the multicast packet, a Direct Memory Access (DMA) filter vector; determining, based on a destination address of the multicast packet, a DMA target vector, where the DMA target vector includes a listing of DMA channels which are available to transfer the multicast packet; determining a DMA final vector based on the DMA filter vector and the DMA target vector; and sending the multicast packet according to the DMA final vector.
    Type: Application
    Filed: February 16, 2011
    Publication date: August 16, 2012
    Applicant: ORACLE INTERNATIONAL CORPORATION
    Inventors: Arvind Srinivasan, Marcelino M. Dignum
  • Patent number: 8176304
    Abstract: An I/O device having function level reset functionality includes a host interface that may include a master reset unit, a plurality of client interfaces, each corresponding to one or more functions, and a plurality of hardware resources. Each hardware resource may be associated with a respective function. In response to receiving a reset request to reset a specific function, the master reset unit may provide to each client interface, a request signal corresponding to the reset request, and a signal identifying the specific function. Each client interface having an association with the specific function may initiate a reset operation of the associated hardware resources, and also provide a client reset done signal for the specific function to the master reset unit in response to completion of the reset operations of the hardware resources. The master reset unit provides a reset done signal for the specific function to the host interface.
    Type: Grant
    Filed: October 22, 2008
    Date of Patent: May 8, 2012
    Assignee: Oracle America, Inc.
    Inventors: Rahoul Puri, Arvind Srinivasan, Louise Y. Yeung, Marcelino M. Dignum, John E. Watkins
  • Publication number: 20110289242
    Abstract: Methods and apparatus are provided for managing interrupts within a virtualizable communication device. Through virtualization, one port of the device may be able to support multiple hosts (e.g., computers) and multiple functions operating on each host. Any number of interrupt resources may be allocated to the supported functions, and may include receive/transmit DMAs, receive/transmit mailboxes, errors, and so on. Resources may migrate from one function to another, such as when a function requests additional resources. Each function's set of allocated resources is isolated from other functions' resources so that their interrupts may be managed and reported in a non-blocking manner. If an interrupt cannot be immediately reported to a destination host/function, the interrupt may be delayed, retried, cancelled or otherwise handled in a way that avoids blocking interrupts to other hosts and functions.
    Type: Application
    Filed: May 21, 2010
    Publication date: November 24, 2011
    Applicant: ORACLE INTERNATIONAL CORPORATION
    Inventors: Arvind Srinivasan, Marcelino M. Dignum
  • Publication number: 20100329253
    Abstract: Some embodiments of the present invention provide a system for packet classification and spreading in a virtualized system. The system can use information in a packet's header to determine a destination system-image in the virtualized system, and a packet-spreading policy for the destination system-image. The system can determine a key using the information in a packet's header. Alternatively, the system can hash the information in the packet's header to obtain an index value. Next, the system can use the key or the index value to perform a lookup in a table which associates keys or index values with system images and/or packet-spreading policies. Once the destination system-image and the packet-spreading policy are determined, the system can deliver the packet to a thread on the destination system-image according to the packet-spreading policy.
    Type: Application
    Filed: June 30, 2009
    Publication date: December 30, 2010
    Applicant: SUN MICROSYSTEMS, INC.
    Inventors: Arvind Srinivasan, Michael F. Speer, Marcelino M. Dignum
  • Publication number: 20100180195
    Abstract: A method and apparatus for accelerating processing of a structured document. A hardware XML accelerator includes one or more processors (e.g., CMT processors), one or more hardware XML parser units, one or more cryptographic units and various interfaces (e.g., to memory, a network, a communication bus). An XML document may be processed in its entirety or may be parsed in segments (e.g., as it is received). A parser unit parses a document or segment character by character, validates characters, assembles tokens from the document, extracts data, generates token headers (to describe tokens and data) and forwards the token headers and data for consumption by an application. A cryptographic unit may enforce web security, XML security or some other security scheme, by providing encryption/decryption functionality, computing digital signatures, etc. Software processing, bus utilization and latencies (e.g.
    Type: Application
    Filed: March 24, 2010
    Publication date: July 15, 2010
    Applicant: ORACLE INTERNATIONAL CORPORATION
    Inventors: Jochen Behrens, Marcelino M. Dignum, Wayne F. Seltzer, William T. Zaumen, John P. Petry, Santiago M. Pericas-Geertsen, Biswadeep Nag
  • Patent number: 7716577
    Abstract: A method and apparatus for accelerating processing of a structured document. A hardware XML accelerator includes one or more processors (e.g., CMT processors), one or more hardware XML parser units, one or more cryptographic units and various interfaces (e.g., to memory, a network, a communication bus). An XML document may be processed in its entirety or may be parsed in segments (e.g., as it is received). A parser unit parses a document or segment character by character, validates characters, assembles tokens from the document, extracts data, generates token headers (to describe tokens and data) and forwards the token headers and data for consumption by an application. A cryptographic unit may enforce web security, XML security or some other security scheme, by providing encryption/decryption functionality, computing digital signatures, etc. Software processing, bus utilization and latencies (e.g.
    Type: Grant
    Filed: November 14, 2005
    Date of Patent: May 11, 2010
    Assignee: Oracle America, Inc.
    Inventors: Jochen Behrens, Marcelino M. Dignum, Wayne F. Seltzer, William T. Zaumen, John P. Petry, Santiago M. Pericas-Geertsen, Biswadeep Nag
  • Publication number: 20100100717
    Abstract: An I/O device having function level reset functionality includes a host interface that may include a master reset unit, a plurality of client interfaces, each corresponding to one or more functions, and a plurality of hardware resources. Each hardware resource may be associated with a respective function. In response to receiving a reset request to reset a specific function, the master reset unit may provide to each client interface, a request signal corresponding to the reset request, and a signal identifying the specific function. Each client interface having an association with the specific function may initiate a reset operation of the associated hardware resources, and also provide a client reset done signal for the specific function to the master reset unit in response to completion of the reset operations of the hardware resources. The master reset unit provides a reset done signal for the specific function to the host interface.
    Type: Application
    Filed: October 22, 2008
    Publication date: April 22, 2010
    Inventors: Rahoul Puri, Arvind Srinivasan, Louise Y. Yeung, Marcelino M. Dignum, John E. Watkins
  • Patent number: 7665016
    Abstract: A method and apparatus for performing virtualized parsing of an XML document. A document is divided into multiple segments, which may correspond to separate packets containing portions of the document, disk blocks, memory pages, etc. For each segment, a processor operating within an XML accelerator initiates parsing by identifying to a hardware parsing unit the document segment, a symbol table for the document and a location for storing state information regarding the parsing. Each segment is parsed in sequence, and the state information of the parsing is stored after each segment is completed, for retrieval when the next segment is to be parsed.
    Type: Grant
    Filed: November 14, 2005
    Date of Patent: February 16, 2010
    Assignee: Sun Microsystems, Inc.
    Inventors: Jochen Behrens, Marcelino M. Dignum, Wayne F. Seltzer, William T. Zaumen
  • Patent number: 7665015
    Abstract: A hardware unit for parsing an XML document includes embedded logic or circuitry for accessing the document, decoding it to change a character set, validating individual characters of the document, extracting tokens, maintaining a symbol table and generating binary token headers to describe the document's structure and convey the document's data to an application. Tokenization, the process of identifying tokens and generating token headers, may be controlled by a finite state machine that recognizes XML delimiters in the document's markup and activates state transitions based on the current state and the recognized delimiter. The parser unit may be implemented within a hardware XML accelerator that includes a processor, a DMA engine, a cryptographic engine, memory (e.g., for storing a document, maintaining a symbol table) and various interfaces (e.g., network, memory, bus).
    Type: Grant
    Filed: November 14, 2005
    Date of Patent: February 16, 2010
    Assignee: Sun Microsystems, Inc.
    Inventors: Marcelino M. Dignum, Jochen Behrens, Wayne F. Seltzer, William T. Zaumen
  • Patent number: 7647444
    Abstract: A method and apparatus for dynamically arbitrating, in hardware, requests for a resource shared among multiple clients. Multiple data streams or service requests require access to a shared resource, such as memory, communication bandwidth, etc. A hardware arbiter monitors the streams' traffic levels and determines when one or more of their arbitration weights should be adjusted. When a queue used by one of the streams is filled to a threshold level, the hardware reacts by quickly and dynamically modifying that queue's arbitration weight. Therefore, as the queue is filled or emptied to different thresholds, the queue's arbitration weight rapidly changes to accommodate the corresponding client's temporal behavior. The arbiter may also consider other factors, such as the client's type of traffic, a desired quality of service, available credits, available descriptors, etc.
    Type: Grant
    Filed: March 13, 2007
    Date of Patent: January 12, 2010
    Assignee: Sun Microsystems, Inc.
    Inventors: Marcelino M. Dignum, Rahoul Puri
  • Patent number: 7596745
    Abstract: A hardware finite state machine for facilitating the processing of an XML (Extensible Markup Language) document or other structured data stream. An accelerator is implemented in hardware to enable fast processing of a document (or a segment thereof). The accelerator includes a finite state machine that embodies a ternary CAM (Content-Addressable Memory) and associated RAM (Random Access Memory). Processing of the document is divided into multiple states, with each state transition defined by a markup delimiter that triggers the transition. The CAM is programmed with entries containing the processing states and, for each possible transition from that state, a pattern for matching delimiters that trigger the possible transitions. For a CAM entry matching the current processing state and a sequence of characters from the document, which may contain a delimiter, the associated RAM identifies the next state and any action to be taken (e.g., to shift the sequence of characters).
    Type: Grant
    Filed: November 14, 2005
    Date of Patent: September 29, 2009
    Assignee: Sun Microsystems, Inc.
    Inventors: Marcelino M. Dignum, Jochen Behrens, Wayne F. Seltzer
  • Publication number: 20080228977
    Abstract: A method and apparatus for dynamically arbitrating, in hardware, requests for a resource shared among multiple clients. Multiple data streams or service requests require access to a shared resource, such as memory, communication bandwidth, etc. A hardware arbiter monitors the streams' traffic levels and determines when one or more of their arbitration weights should be adjusted. When a queue used by one of the streams is filled to a threshold level, the hardware reacts by quickly and dynamically modifying that queue's arbitration weight. Therefore, as the queue is filled or emptied to different thresholds, the queue's arbitration weight rapidly changes to accommodate the corresponding client's temporal behavior. The arbiter may also consider other factors, such as the client's type of traffic, a desired quality of service, available credits, available descriptors, etc.
    Type: Application
    Filed: March 13, 2007
    Publication date: September 18, 2008
    Applicant: Sun Microsystems, Inc.
    Inventors: Marcelino M. Dignum, Rahoul Puri