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).
-
Method and system for classification and management of inter-blade network traffic in a blade server
Patent number: 8913613Abstract: 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: GrantFiled: February 16, 2011Date of Patent: December 16, 2014Assignee: Oracle International CorporationInventors: Arvind Srinivasan, Marcelino M. Dignum -
Patent number: 8634415Abstract: 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: GrantFiled: February 16, 2011Date of Patent: January 21, 2014Assignee: Oracle International CorporationInventors: Arvind Srinivasan, Marcelino M. Dignum
-
Patent number: 8625448Abstract: 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: GrantFiled: February 16, 2011Date of Patent: January 7, 2014Assignee: Oracle International CorporationInventors: Arvind Srinivasan, Marcelino M. Dignum
-
Patent number: 8606975Abstract: 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: GrantFiled: May 21, 2010Date of Patent: December 10, 2013Assignee: Oracle International CorporationInventors: Arvind Srinivasan, Marcelino M. Dignum
-
Patent number: 8392824Abstract: 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: GrantFiled: March 24, 2010Date of Patent: March 5, 2013Assignee: 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: 8369325Abstract: 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: GrantFiled: June 30, 2009Date of Patent: February 5, 2013Assignee: Oracle America, Inc.Inventors: Arvind Srinivasan, Michael F. Speer, Marcelino M. Dignum
-
Publication number: 20120207156Abstract: 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: ApplicationFiled: February 16, 2011Publication date: August 16, 2012Applicant: ORACLE INTERNATIONAL CORPORATIONInventors: Arvind Srinivasan, Marcelino M. Dignum
-
Publication number: 20120207039Abstract: 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: ApplicationFiled: February 16, 2011Publication date: August 16, 2012Applicant: ORACLE INTERNATIONAL CORPORATIONInventors: Arvind Srinivasan, Marcelino M. Dignum
-
METHOD AND SYSTEM FOR CLASSIFICATION AND MANAGEMENT OF INTER-BLADE NETWORK TRAFFIC IN A BLADE SERVER
Publication number: 20120207158Abstract: 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: ApplicationFiled: February 16, 2011Publication date: August 16, 2012Applicant: ORACLE INTERNATIONAL CORPORATIONInventors: Arvind Srinivasan, Marcelino M. Dignum -
Patent number: 8176304Abstract: 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: GrantFiled: October 22, 2008Date of Patent: May 8, 2012Assignee: Oracle America, Inc.Inventors: Rahoul Puri, Arvind Srinivasan, Louise Y. Yeung, Marcelino M. Dignum, John E. Watkins
-
Publication number: 20110289242Abstract: 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: ApplicationFiled: May 21, 2010Publication date: November 24, 2011Applicant: ORACLE INTERNATIONAL CORPORATIONInventors: Arvind Srinivasan, Marcelino M. Dignum
-
Publication number: 20100329253Abstract: 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: ApplicationFiled: June 30, 2009Publication date: December 30, 2010Applicant: SUN MICROSYSTEMS, INC.Inventors: Arvind Srinivasan, Michael F. Speer, Marcelino M. Dignum
-
Publication number: 20100180195Abstract: 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: ApplicationFiled: March 24, 2010Publication date: July 15, 2010Applicant: ORACLE INTERNATIONAL CORPORATIONInventors: Jochen Behrens, Marcelino M. Dignum, Wayne F. Seltzer, William T. Zaumen, John P. Petry, Santiago M. Pericas-Geertsen, Biswadeep Nag
-
Patent number: 7716577Abstract: 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: GrantFiled: November 14, 2005Date of Patent: May 11, 2010Assignee: 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: 20100100717Abstract: 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: ApplicationFiled: October 22, 2008Publication date: April 22, 2010Inventors: Rahoul Puri, Arvind Srinivasan, Louise Y. Yeung, Marcelino M. Dignum, John E. Watkins
-
Patent number: 7665016Abstract: 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: GrantFiled: November 14, 2005Date of Patent: February 16, 2010Assignee: Sun Microsystems, Inc.Inventors: Jochen Behrens, Marcelino M. Dignum, Wayne F. Seltzer, William T. Zaumen
-
Patent number: 7665015Abstract: 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: GrantFiled: November 14, 2005Date of Patent: February 16, 2010Assignee: Sun Microsystems, Inc.Inventors: Marcelino M. Dignum, Jochen Behrens, Wayne F. Seltzer, William T. Zaumen
-
Patent number: 7647444Abstract: 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: GrantFiled: March 13, 2007Date of Patent: January 12, 2010Assignee: Sun Microsystems, Inc.Inventors: Marcelino M. Dignum, Rahoul Puri
-
Patent number: 7596745Abstract: 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: GrantFiled: November 14, 2005Date of Patent: September 29, 2009Assignee: Sun Microsystems, Inc.Inventors: Marcelino M. Dignum, Jochen Behrens, Wayne F. Seltzer
-
Publication number: 20080228977Abstract: 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: ApplicationFiled: March 13, 2007Publication date: September 18, 2008Applicant: Sun Microsystems, Inc.Inventors: Marcelino M. Dignum, Rahoul Puri