Patents by Inventor Xiaoye Jiang

Xiaoye Jiang 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: 20050066095
    Abstract: A write interface in a file server provides permission management for concurrent access to data blocks of a file, ensures correct use and update of indirect blocks in a tree of the file, preallocates file blocks when the file is extended, solves access conflicts for concurrent reads and writes to the same block, and permits the use of pipelined processors. For example, a write operation includes obtaining a per file allocation mutex (mutually exclusive lock), preallocating a metadata block, releasing the allocation mutex, issuing an asynchronous write request for writing to the file, waiting for the asynchronous write request to complete, obtaining the allocation mutex, committing the preallocated metadata block, and releasing the allocation mutex. Since no locks are held during the writing of data to the on-disk storage and this data write takes the majority of the time, the method enhances concurrency while maintaining data integrity.
    Type: Application
    Filed: September 23, 2003
    Publication date: March 24, 2005
    Inventors: Sachin Mullick, Jiannan Zheng, Xiaoye Jiang, Sorin Faibish, Peter Bixby
  • Publication number: 20050065986
    Abstract: Read-only and read-write snapshot copies of a production file in a Unix-based file system are organized as a version set of file inodes and shared file blocks. Version pointers and branch pointers link the inodes. Initially the production file can have all its blocks preallocated or it can be a sparse file having only an inode and its last data block. A protocol is provided for creating read-only and read-write snapshots, deleting snapshots, restoring the production file with a specified snapshot, refreshing a specified snapshot, and naming the snapshots. Block pointers are marked with a flag indicating whether or not the pointed-to block is owned by the parent inode. A non-owner marking is inherited by all of the block's descendants. The block ownership controls the copying of indirect blocks when writing to the production file, and also controls deallocation and passing of blocks when deleting a read-only snapshot.
    Type: Application
    Filed: September 23, 2003
    Publication date: March 24, 2005
    Inventors: Peter Bixby, Sachin Mullick, Jiannan Zheng, Xiaoye Jiang, Sorin Faibish
  • Publication number: 20050044080
    Abstract: To permit multiple unsynchronized processors to update the file-modification time attribute of a file during concurrent asynchronous writes to the file, a primary processor having a clock manages access to metadata of the file. A number of secondary processors service client request for access to the file. Each secondary processor has a timer. When the primary processor grants a range lock upon the file to a secondary, it returns its clock time (m). Upon receipt, the secondary starts a local timer (t). When the secondary modifies the file data, it determines a file-modification time that is a function of the clock time and the timer interval, such as a sum (m+t). When the secondary receives an updated file-modification time (mp) from the primary, if mp>m+t, then the secondary updates the clock time (m) to (mp) and resets its local timer.
    Type: Application
    Filed: August 22, 2003
    Publication date: February 24, 2005
    Inventors: Stephen Fridella, Gang Ma, Xiaoye Jiang, Sorin Faibish, Rui Liang
  • Publication number: 20050044162
    Abstract: A storage object such as a virtual disk drive or a raw logical volume is contained in a UNIX compatible file so that the file containing the storage object can be exported using the NFS or CIFS protocol and shared among UNIX and MS Windows clients or servers. The storage object can be replicated and backed up using conventional file replication and backup facilities without disruption of client access to the storage object. For client access to data of the storage object, a software driver accesses the file containing the storage object. For example, a software driver called a virtual SCSI termination is used to access a file containing a virtual SCSI disk drive. Standard storage services use the iSCSI protocol to access the virtual SCSI termination. An IP replication or snapshot copy facility may access the file containing the virtual SCSI disk drive using a higher-level protocol.
    Type: Application
    Filed: August 22, 2003
    Publication date: February 24, 2005
    Inventors: Rui Liang, Jiannan Zheng, Mark Ku, Xiaoye Jiang, Sorin Faibish
  • Publication number: 20040107318
    Abstract: In a network attached cached disk storage system, data is transmitted over the network in data packets having a data length that is much smaller than the logical block size for reading or writing to disk storage. To avoid copying of data from network port buffers to the cache memory, the cache blocks of the cache memory are organized as linked lists of list elements, which can be used as network port input or output buffers. For TCP data packets, for example, each list element has a data slot for storing up to 1,500 bytes, and a field indicating the number of bytes stored in the data slot.
    Type: Application
    Filed: December 2, 2002
    Publication date: June 3, 2004
    Inventors: Jean-Pierre Bono, Jiannan Zheng, Peter C. Bixby, Xiaoye Jiang
  • Publication number: 20040107222
    Abstract: Internally, a production file system and each of its related snapshot file systems have a common file system identifier (fid′) and a unique respective file system identifier (fsid′). Externally, the production file system and each of its related snapshot file systems has a common file system identifier (fsid) and a unique respective file identifier (fid). For example, the “fsid” and “fid” for the production and snapshot file systems are interchanged between a client-server protocol layer and a logical volume layer in a file server. Moreover, the file handle for an object indicates whether an object is in either a production file system that is not configured to have related snapshots, a production file system that is configured to have related snapshots, or a snapshot file system. When the object is in a snapshot file system, the file handle also indicates the related production file system.
    Type: Application
    Filed: December 3, 2002
    Publication date: June 3, 2004
    Inventors: Dinesh Venkatesh, Xiaoye Jiang, Jiannan Zheng, Uresh Vahalia
  • Publication number: 20040059822
    Abstract: The SCSI and iSCSI layers over the TCP/IP layers of the protocol stack in an IP network client and in an IP network-attached storage server are replaced with a thin network block services layer. The network block services layer 71 implements a network block services protocol having a very reduced set of commands transmitted between the client and the storage server. The network block services protocol is used in a configuration process in which logical volumes of the network-attached storage are exported to the client and become local pseudo-disk instances. The client's operating system and application programs access the local pseudo-disk instances with what appears to be a standard device driver for a local disk device. The device driver maintains a TCP connection to each open device, and responds to connection failure by re-connecting with an alternative server IP port.
    Type: Application
    Filed: September 25, 2002
    Publication date: March 25, 2004
    Inventors: Xiaoye Jiang, Dinesh Venkatesh, Mark K. Ku, Xiangping Chen
  • Publication number: 20030191745
    Abstract: Metadata management in a file server or storage network is delegated from a primary data processor to a secondary data processor in order to reduce data traffic between the primary data processor and the secondary data processor. The primary data processor retains responsibility for managing locks upon objects in the file system that it owns, and also retains responsibility for allocation of free blocks and inodes of the file system. By leasing free blocks and inodes to the secondary and granting locks to the secondary, the secondary can perform the other metadata management tasks such as appending blocks to a file, truncating a file, creating a file, and deleting a file.
    Type: Application
    Filed: April 4, 2002
    Publication date: October 9, 2003
    Inventors: Xiaoye Jiang, Gang Ma, Jiannan Zheng
  • Patent number: 6571259
    Abstract: A file server provides transaction processing capabilities previously supplied by the operating system of a host computer. On-disk file system metadata is changed only at commit time, and a transaction log protects the transition. The disk state can only be a consistent state, resulting from a commit operation. All disk-block reservation and pre-allocation mapping are in the memory, and after a crash, they are automatically discarded. The file server therefore relieves the client of processing burden and also reduces network traffic. In addition, the file server can more efficiently perform the transaction processing capabilities and reduce the frequency of access to storage by judicious allocation of file system blocks and transfer of file system blocks between file system objects, cache memory, and the transaction log. The differentiation between preallocation states and allocation states of in-memory file system blocks also permits application programs to more efficiently transfer data between files.
    Type: Grant
    Filed: September 26, 2000
    Date of Patent: May 27, 2003
    Assignee: EMC Corporation
    Inventors: Jiannan Zheng, Xiaoye Jiang, Uresh Vahalia
  • Patent number: 6453354
    Abstract: A first data mover computer services data access requests from a network client, and a second data mover computer is coupled to the first data mover computer for servicing data access requests from the first data mover computer. The first data mover computer uses a connection-oriented protocol to obtain client context information and to respond to a session setup request from the client by authenticating the client. Then the first data mover computer responds to a file system connection request from the client by forwarding the client context information and the file system connection request to the second data mover computer. Then the first data mover computer maintains a connection between the first data mover computer and the second data mover computer when the client accesses the file system and the first data mover computer passes file access requests from the client to the second data mover computer and returns responses to the file access requests from the second data mover computer to the client.
    Type: Grant
    Filed: March 3, 1999
    Date of Patent: September 17, 2002
    Assignee: EMC Corporation
    Inventors: Xiaoye Jiang, Uresh K. Vahalia, Uday Gupta, Percy Tzelnic
  • Patent number: 6389420
    Abstract: File locks and file metadata are distributed from a file manager to clients in a data network to permit the clients to share access to file data in data storage. The file manager is permitted to grant a second lock upon the file data without necessarily receiving notification from a client that it has relinquished a first lock on the file data while ensuring that conflicting locks are never granted. The client sets the beginning of a first period of time over which the client may access the file data once the first lock on the file data has been granted by the file manager, and the client sends a lock request to the file manager. The file manager responds by setting the beginning of a second period of time such that the first period of time is certain to have expired once the second period of time has expired, granting the first lock upon the file data to the client, and transmitting a lock grant message to the client.
    Type: Grant
    Filed: September 30, 1999
    Date of Patent: May 14, 2002
    Assignee: EMC Corporation
    Inventors: Uresh K. Vahalia, Xiaoye Jiang, Jeffrey Jon Darcy, Boris Zuckerman, Ronald Curtis Searls
  • Patent number: 6324581
    Abstract: A plurality of data mover computers control access to respective file systems in data storage. A network client serviced by any of the data movers can access each of the file systems. If a data mover receives a client request for access to a file in a file system to which access is controlled by another data mover, then the data mover that received the client request sends a metadata request to the data mover that controls access to the file system. The data mover that controls access to the file system responds by placing a lock on the file and returning metadata of the file. The data mover that received the client request uses the metadata to formulate a data access command that is used to access the file data in the file system over a bypass data path that bypasses the data mover computer that controls access to the file system.
    Type: Grant
    Filed: March 3, 1999
    Date of Patent: November 27, 2001
    Assignee: EMC Corporation
    Inventors: Yikang Xu, Uresh K. Vahalia, Xiaoye Jiang, Uday Gupta, Percy Tzelnic