Patents by Inventor Rasoul Oskouy

Rasoul Oskouy 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: 7574443
    Abstract: A scalable clustered storage system includes a control node and a plurality of storage nodes. The control node stores object identifiers and location information associated with a plurality of files. The plurality of storage nodes stores the plurality of files. A storage node in the plurality of storage nodes receives a request for a file in a file system from a client. The storage node then communicates with the control node to determine an object identifier and location information associated with the file. The storage node accesses the file in the file system to service the request from the client using the object identifier and location information associated with the file.
    Type: Grant
    Filed: July 25, 2006
    Date of Patent: August 11, 2009
    Assignee: ParaScale, Inc.
    Inventors: Cameron Bahar, Joseph Hopfield, Naveen Nalam, David B. Zafman, Rasoul Oskouy
  • Publication number: 20080031252
    Abstract: A method and device for in-line processing a data packet is provided. The data packet is received at a first buffer. The data packet is divided into a number of cells that are stored in a first queue. For each cell, a cell state code is stored that indicates an address of the corresponding cell in the first queue and an indication of a sequence order of the cell within the data packet.
    Type: Application
    Filed: August 20, 2007
    Publication date: February 7, 2008
    Inventors: Rasoul Oskouy, Dennis Ferguson, Hann-Hwan Ju, Raymond Marcelino Lim, Pradeep Sindhu, Sreeram Veeragandham, Jeff Zimmer, Michael Hui
  • Publication number: 20070147257
    Abstract: A method and apparatus for in-line processing a data packet while routing the packet through a router in a system transmitting data packets between a source and a destination over a network including the router. The method includes receiving the data packet and pre-processing layer header data for the data packet as the data packet is received and prior to transferring any portion of the data packet to packet memory. The data packet is thereafter stored in the packet memory. A routing through the router is determined including a next hop index describing the next connection in the network. The data packet is retrieved from the packet memory and a new layer header for the data packet is constructed from the next hop index while the data packet is being retrieved from memory. The new layer header is coupled to the data packet prior to transfer from the router.
    Type: Application
    Filed: March 5, 2007
    Publication date: June 28, 2007
    Applicant: Juniper Networks, Inc.
    Inventors: Rasoul Oskouy, Dennis Ferguson, Hann-Hwan Ju, Raymond Lim, Pradeep Sindhu, Sreeram Veeragandham, Jeff Zimmer, Michael Hui
  • Publication number: 20070022129
    Abstract: Techniques and mechanism are provided for deciding which storage device (or devices) a file should be stored on. These determinations can be used to guide either the placement of new files or the replication or migration of existing files to new storage volumes. These determinations may be made on the basis of simple rules, involving a small number of readily ascertainable file attributes.
    Type: Application
    Filed: July 25, 2006
    Publication date: January 25, 2007
    Applicant: Parascale, Inc.
    Inventors: Cameron Bahar, Joseph Hopfield, Naveen Nalam, David Zafman, Rasoul Oskouy
  • Publication number: 20070022122
    Abstract: File system independent techniques and mechanisms for replicating files on multiple devices are provided, migrating files from one device to another (for purposes of reliability, increased bandwidth, load balancing, capacity expansion, or reduced cost), and propagating updates from a master copy to remote replicas. The mechanisms involve work queues and asynchronous file migration daemons that operate independently from and in parallel with the primary client-server and network protocol to on-disk storage data paths.
    Type: Application
    Filed: July 25, 2006
    Publication date: January 25, 2007
    Applicant: Parascale, Inc.
    Inventors: Cameron Bahar, Joseph Hopfield, Naveen Nalam, David Zafman, Rasoul Oskouy
  • Publication number: 20070022121
    Abstract: A storage system includes a plurality of storage servers that store a plurality of files, a monitor module, and a redirector module. The monitor module monitors usage information associated with the plurality of storage servers. The redirector module determines, based on the monitored usage information, a storage server in the plurality of storage servers to service a session from a client. The redirector module then instructs the client to establish the session with the determined storage server.
    Type: Application
    Filed: July 25, 2006
    Publication date: January 25, 2007
    Applicant: Parascale, Inc.
    Inventors: Cameron Bahar, Joseph Hopfield, Naveen Nalam, David Zafman, Rasoul Oskouy
  • Publication number: 20070022087
    Abstract: A scalable clustered storage system includes a control node and a plurality of storage nodes. The control node stores object identifiers and location information associated with a plurality of files. The plurality of storage nodes stores the plurality of files. A storage node in the plurality of storage nodes receives a request for a file in a file system from a client. The storage node then communicates with the control node to determine an object identifier and location information associated with the file. The storage node accesses the file in the file system to service the request from the client using the object identifier and location information associated with the file.
    Type: Application
    Filed: July 25, 2006
    Publication date: January 25, 2007
    Applicant: Parascale, Inc.
    Inventors: Cameron Bahar, Joseph Hopfield, Naveen Nalam, David Zafman, Rasoul Oskouy
  • Publication number: 20060023719
    Abstract: A network device switches variable length data units from a source to a destination in a network. An input port receives the variable length data unit and a divider divides the variable length data unit into uniform length data units for temporary storage in the network device. A distributed memory includes a plurality of physically separated memory banks addressable using a single virtual address space and an input switch streams the uniform length data units across the memory banks based on the virtual address space. The network device further includes an output switch for extracting the uniform length data units from the distributed memory by using addresses of the uniform length data units within the virtual address space. The output switch reassembles the uniform length data units to reconstruct the variable length data unit. An output port receives the variable length data unit and transfers the variable length data unit to the destination.
    Type: Application
    Filed: September 15, 2005
    Publication date: February 2, 2006
    Inventors: Pradeep Sindhu, Dennis Ferguson, Bjorn Liencres, Nalini Agarwal, Hann-Hwan Ju, Raymond Manese Lim, Rasoul Oskouy, Sreeram Veeragandham
  • Publication number: 20050201396
    Abstract: A method and apparatus for switching a data packet between a source and destination in a network. The data packet includes a header portion and a data portion. The header portion includes routing information for the data packet. The method includes defining a data path in the router comprising a path through the router along which the data portion of the data packet travels and defining a control path comprising a path through the router along which routing information from the header portion travels. The method includes separating the data path and control path in the router such that the routing information can be separated from the data portion allowing for the separate processing of each in the router. The data portion can be stored in a global memory while routing decisions are made on the routing information in the control path.
    Type: Application
    Filed: May 6, 2005
    Publication date: September 15, 2005
    Inventors: Pradeep Sindhu, Kireeti Kompella, Dennis Ferguson, Bjorn Liencres, Nalini Agarwal, Hann-Hwan Ju, Raymond Lim, Rasoul Oskouy, Sreeram Veeragandham
  • Patent number: 5689509
    Abstract: A circuit and method for optimizing efficiency in transferring a block of data having a plurality of frames of limited size from a memory element. The circuit comprises a transmit ("TX") DMA engine and a TX Segmentation engine. The TX DMA engine is responsible for accessing overhead information for the block of data within a TX data buffer from a data descriptor dedicated to that particular TX data buffer. The TX DMA engine is further responsible for reading the block of data from the memory element to be stored local thereto. The TX Segmentation engine is responsible for segmenting the block of data into a plurality of cell packets corresponding in number to the plurality of frames. Each cell packet contains in common the overhead information for the block of data to avoid the TX DMA engine re-accessing the data descriptor to obtain the same overhead information for each frame being transferred.
    Type: Grant
    Filed: November 8, 1996
    Date of Patent: November 18, 1997
    Assignee: Sun Microsystems, Inc.
    Inventors: Andre J. Gaytan, Denny Gentry, Rasoul Oskouy