Patents by Inventor Xu Zhou

Xu Zhou 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: 9141798
    Abstract: Circuits and methods are provided for detecting, identifying and/or removing undesired content. According to one embodiment, a content object that is to be virus processed is stored by a general purpose processor to a system memory. Virus scan parameters for the content object are set up by the general purpose processor. Instructions from a virus signature memory of a virus co-processor are read by the virus co-processor based on the virus scan parameters. The instructions contain op-codes of a first instruction type and op-codes of a second instruction type. Those of the instructions containing op-codes of the first instruction type are assigned to a first instruction pipe of multiple instruction pipes of the virus co-processor for execution. An instruction of the assigned instructions containing op-codes of the first instruction type is executed by the first instruction pipe including accessing a portion of the content object from the system memory.
    Type: Grant
    Filed: September 12, 2014
    Date of Patent: September 22, 2015
    Assignee: Fortinet, Inc.
    Inventors: Xu Zhou, Lin Huang, Michael Xie
  • Patent number: 9100319
    Abstract: Methods and systems for improving accuracy, speed, and efficiency of context-aware pattern matching are provided. According to one embodiment, a packet stream is received and pre-matched by an acceleration device with one or more conditions to identify packets meeting the one or more conditions. The acceleration device then correlates at least one identified packet based on the one or more conditions to generate matching tokens of the packet that meet the one or more conditions and sends, to one or more processors of the acceleration device, the matching tokens along with identifiers of the one or more conditions so that the processors can process the matching tokens and the identifiers of the one or more conditions based on one or more of context aware string matching, regular expression matching, and packet field value matching to extract packets that match context of the one or more conditions.
    Type: Grant
    Filed: September 25, 2014
    Date of Patent: August 4, 2015
    Assignee: Fortinet, Inc.
    Inventors: Zhi Guo, Hongbin Lu, Xu Zhou, Lin Huang, Michael Xie
  • Publication number: 20150168373
    Abstract: An analytical device for determining a parameter of a liquid sample, especially a digestion parameter, such as chemical oxygen demand, total carbon content or total nitrogen content, comprising a reactor, and measuring system for ascertaining the parameter of the liquid sample. A container system for storing samples, reagents and waste products in containers, a transport and dosing system for metering and transporting the sample and reagents from the containers into a metering container and for disposal of waste products from the metering container into a waste container, and a measuring transducer for registering a measured parameter correlating, measured value of the liquid sample mixed in the reactor, and measuring, system, in given cases, with one or more reagents is provided.
    Type: Application
    Filed: December 8, 2014
    Publication date: June 18, 2015
    Inventors: Marco Volker, Sofia Reim, Anja Gerlinger, Xu Zhou
  • Publication number: 20150110125
    Abstract: Methods and systems for a more efficient transmission of network traffic are provided. According to one embodiment, payload data originated by a user process running on a host processor of the computer system is fetched by an interface of the computer system by performing direct virtual memory addressing of a user memory space of a system memory of the computer system on behalf of a network processor of the computer system. The direct virtual memory addressing maps a physical address of the payload data to a virtual address. The payload data is segmented by the network processor across one or more packets.
    Type: Application
    Filed: December 12, 2014
    Publication date: April 23, 2015
    Applicant: Fortinet, Inc.
    Inventors: Xu Zhou, David Chen, Lin Huang, Guansong Zhang
  • Publication number: 20150101054
    Abstract: Circuits and methods are provided for detecting, identifying and/or removing undesired content. According to one embodiment, a system includes a system memory, a general purpose processor, an instruction memory and a virus co-processor. The processor is coupled to the system memory and operable to store a data segment therein. The instruction memory includes a virus signature, having a first instruction of a first instruction type and a second instruction of a second instruction type, for detection of a computer virus. The co-processor is coupled to the instruction memory and the system memory and is operable to access the data segment. The co-processor includes first and second instruction pipes operable to execute the first and second instruction types, respectively. The first and second instruction pipes include first and second write back circuits, respectively, that are linked to ensure a ordered write back of instructions.
    Type: Application
    Filed: November 18, 2014
    Publication date: April 9, 2015
    Applicant: Fortinet, Inc.
    Inventors: Xu Zhou, Lin Huang, Michael Xie
  • Publication number: 20150055481
    Abstract: Methods and systems for improving accuracy, speed, and efficiency of context-aware pattern matching are provided. According to one embodiment, a packet stream is received and pre-matched by an acceleration device with one or more conditions to identify packets meeting the one or more conditions. The acceleration device then correlates at least one identified packet based on the one or more conditions to generate matching tokens of the packet that meet the one or more conditions and sends, to one or more processors of the acceleration device, the matching tokens along with identifiers of the one or more conditions so that the processors can process the matching tokens and the identifiers of the one or more conditions based on one or more of context aware string matching, regular expression matching, and packet field value matching to extract packets that match context of the one or more conditions.
    Type: Application
    Filed: September 25, 2014
    Publication date: February 26, 2015
    Applicant: FORTINET, INC.
    Inventors: Zhi Guo, Hongbin Lu, Xu Zhou, Lin Huang, Michael Xie
  • Patent number: 8964785
    Abstract: Methods and systems for a more efficient transmission of network traffic are provided. According to one embodiment, a user process of a host processor requests a network driver to store payload data within a system memory. The network driver stores (i) payload buffers each containing therein at least a subset of the payload data and (ii) buffer descriptors each containing therein information indicative of a starting address of a corresponding payload buffer within a user memory space. A network processor transmits onto a network the payload data within multiple transport layer protocol packets by (i) causing a network interface to retrieve the payload data from the payload buffers by performing direct virtual memory addressing of the user memory space using the buffer descriptors and information contained within a translation data structure stored within the system memory; and (ii) segmenting the payload data across the transport layer protocol packets.
    Type: Grant
    Filed: March 29, 2013
    Date of Patent: February 24, 2015
    Assignee: Fortinet, Inc.
    Inventors: Xu Zhou, David Chen, Lin Huang, Guansong Zhang
  • Publication number: 20140380483
    Abstract: Circuits and methods are provided for detecting, identifying and/or removing undesired content. According to one embodiment, a content object that is to be virus processed is stored by a general purpose processor to a system memory. Virus scan parameters for the content object are set up by the general purpose processor. Instructions from a virus signature memory of a virus co-processor are read by the virus co-processor based on the virus scan parameters. The instructions contain op-codes of a first instruction type and op-codes of a second instruction type. Those of the instructions containing op-codes of the first instruction type are assigned to a first instruction pipe of multiple instruction pipes of the virus co-processor for execution. An instruction of the assigned instructions containing op-codes of the first instruction type is executed by the first instruction pipe including accessing a portion of the content object from the system memory.
    Type: Application
    Filed: September 12, 2014
    Publication date: December 25, 2014
    Applicant: Fortinet, Inc.
    Inventors: Xu Zhou, Lin Huang, Michael Xie
  • Publication number: 20140351937
    Abstract: Circuits and methods for detecting, identifying and/or removing undesired content are provided. According to one embodiment, a method for virus processing is provided. A virus signature file that includes multiple virus signatures capable of detecting and identifying a variety of known viruses is downloaded by a general purpose processor. It is determined by the general purpose processor whether a virus co-processor is coupled to the general purpose processor. When the virus co-processor is determined to be coupled to the general purpose processor, then it is further determined by the general purpose processor which virus signatures are supported by the virus co-processor (“CP-supported virus signatures”). The CP-supported virus signatures are transferred to a memory associated with the virus co-processor. The virus co-processor is directed by the general purpose processor to perform a virus scan based on the supported virus signatures.
    Type: Application
    Filed: August 8, 2014
    Publication date: November 27, 2014
    Applicant: Fortinet, Inc.
    Inventors: Lin Huang, Xu Zhou, Michael Xie
  • Patent number: 8850586
    Abstract: Circuits and methods are provided for detecting, identifying and/or removing undesired content. According to one embodiment, a content object is stored by a general purpose processor to a system memory. The memory has stored therein a page directory containing information for translating virtual addresses to physical addresses. Multiple most recently used entries of the page directory are cached, by a virus co-processor, within translation lookaside buffers (TLBs) implemented within an on-chip cache of the co-processor. Instructions are read by the co-processor, from a virus signature memory of the co-processor. The instructions contain op-codes of a first and second instruction type. Instructions of the first type are assigned to a first instruction pipe of the co-processor. An instruction assigned to the first instruction pipe is executed including accessing the content object by performing direct virtual memory addressing of the system memory and comparing the content object against a string.
    Type: Grant
    Filed: April 30, 2014
    Date of Patent: September 30, 2014
    Assignee: Fortinet, Inc.
    Inventors: Xu Zhou, Lin Huang, Michael Xie
  • Patent number: 8839439
    Abstract: Circuits and methods are provided for detecting, identifying and/or removing undesired content. According to one embodiment, a method for virus processing content objects is provided. A content object is stored within a system memory by a general purpose processor using a virtual address. Most recently used entries of a page directory and a page table of the system memory are cached within a translation lookaside buffer (TLB) of a virus co-processor. Instructions are read from a virus signature memory of the co-processor. Those of a first type are assigned to a first of multiple instruction pipes of the co-processor. The first instruction pipe executes an instruction including accessing a portion of the content object by performing direct virtual memory addressing of the system memory using a physical address derived based on the virtual address and the TLB and comparing it to a string associated with the instruction.
    Type: Grant
    Filed: February 7, 2013
    Date of Patent: September 16, 2014
    Assignee: Fortinet, Inc.
    Inventors: Xu Zhou, Lin Huang, Michael Xie
  • Patent number: 8819830
    Abstract: Circuits and methods for detecting, identifying and/or removing undesired content are provided. According to one embodiment, a method for virus processing is provided. A data segment is received by a general purpose processor coupled to a virus co-processor and a memory via an interconnect bus. The memory includes a first signature and a second signature. The first includes a primitive instruction and a Content Pattern Recognition (CPR) instruction stored at contiguous locations in the memory and compiled for hardware execution on the co-processor. The second is compiled for software execution. The data segment is scanned by the general purpose processor by applying the second signature against the data segment. The co-processor is directed by the general purpose processor to scan the data segment by applying the first signature against the data segment by storing the data segment to the memory and indicating a request for a scan to the co-processor.
    Type: Grant
    Filed: December 30, 2013
    Date of Patent: August 26, 2014
    Assignee: Fortinet, Inc.
    Inventors: Lin Huang, Xu Zhou, Michael Xie
  • Publication number: 20140237601
    Abstract: Circuits and methods are provided for detecting, identifying and/or removing undesired content. According to one embodiment, a content object is stored by a general purpose processor to a system memory. The memory has stored therein a page directory containing information for translating virtual addresses to physical addresses. Multiple most recently used entries of the page directory are cached, by a virus co-processor, within translation lookaside buffers (TLBs) implemented within an on-chip cache of the co-processor. Instructions are read by the co-processor, from a virus signature memory of the co-processor. The instructions contain op-codes of a first and second instruction type. Instructions of the first type are assigned to a first instruction pipe of the co-processor. An instruction assigned to the first instruction pipe is executed including accessing the content object by performing direct virtual memory addressing of the system memory and comparing the content object against a string.
    Type: Application
    Filed: April 30, 2014
    Publication date: August 21, 2014
    Applicant: Fortinet, Inc.
    Inventors: Xu Zhou, Lin Huang, Michael Xie
  • Publication number: 20140143876
    Abstract: Circuits and methods for detecting, identifying and/or removing undesired content are provided. According to one embodiment, a method for virus processing is provided. A data segment is received by a general purpose processor coupled to a virus co-processor and a memory via an interconnect bus. The memory includes a first signature and a second signature. The first includes a primitive instruction and a Content Pattern Recognition (CPR) instruction stored at contiguous locations in the memory and compiled for hardware execution on the co-processor. The second is compiled for software execution. The data segment is scanned by the general purpose processor by applying the second signature against the data segment. The co-processor is directed by the general purpose processor to scan the data segment by applying the first signature against the data segment by storing the data segment to the memory and indicating a request for a scan to the co-processor.
    Type: Application
    Filed: December 30, 2013
    Publication date: May 22, 2014
    Applicant: Fortinet, Inc.
    Inventors: Lin Huang, Xu Zhou, Michael Xie
  • Publication number: 20140096254
    Abstract: Circuits and methods are provided for detecting, identifying and/or removing undesired content. According to one embodiment, a method for virus co-processing is provided. A general purpose processor stores a data segment to its system memory using a virtual address. The system memory has stored therein a page directory and a page table containing information for translating virtual addresses to physical addresses within a physical address space of the system memory. A virus processing hardware accelerator translates the virtual address of the data segment to a physical address of the data segment based on the page directory and the page table. The hardware accelerator accesses the data segment based on the physical address. The hardware accelerator scans the data segment for viruses by executing multiple pattern comparisons against the data segment. The hardware accelerator returns a result of the scanning to the general purpose processor via the system memory.
    Type: Application
    Filed: September 20, 2013
    Publication date: April 3, 2014
    Applicant: Fortinet, Inc.
    Inventors: Xu Zhou, Lin Huang, Michael Xie
  • Patent number: 8646083
    Abstract: Circuits and methods for detecting, identifying and/or removing undesired content are provided. According to one embodiment, a method for virus processing is provided. A general purpose processor receives and stores a data segment to a first memory at a virtual address. The first memory contains paging data structures for translating virtual addresses to physical addresses. The general purpose processor directs a virus processing hardware accelerator to scan the data segment based on virus signatures compiled for the virus processing hardware accelerator and stored in a second memory. The first memory includes a first virus signature compiled for the general purpose processor. The virus processing hardware accelerator retrieves the data segment by accessing the first memory based on the virtual address and cached information, stored within one or more translation lookaside buffers local to the virus processing hardware accelerator, relating to most recently used entries of the paging data structures.
    Type: Grant
    Filed: August 6, 2012
    Date of Patent: February 4, 2014
    Assignee: Fortinet, Inc.
    Inventors: Lin Huang, Xu Zhou, Michael Xie
  • Patent number: 8560862
    Abstract: Circuits and methods are provided for detecting, identifying and/or removing undesired content. According to one embodiment, a method for virus co-processing is provided. A general purpose processor stores a data segment to a system memory of the general purpose processor using virtual addresses. A virus processing hardware accelerator coupled to the general purpose processor via an interconnect bus accesses the data segment by performing direct virtual memory addressing of the system memory using the virtual addresses. The virus processing hardware accelerator scans the data segment for viruses by executing pattern comparisons against the data segment. The virus processing hardware accelerator returns a result of the scanning to the general purpose processor by writing the result to the system memory. The general purpose processor may scan the data segment for viruses of a first type in parallel or serially with virus processing hardware accelerator scanning for viruses of a second type.
    Type: Grant
    Filed: December 17, 2009
    Date of Patent: October 15, 2013
    Assignee: Fortinet, Inc.
    Inventors: Xu Zhou, Lin Huang, Michael Xie
  • Patent number: 8535225
    Abstract: An integrated colligation evaluating device for human body enginery indexes and the working method thereof. The device includes an equipment case (1) provided with a plurality of measuring sensors. A circuit board (13) which is electrically connected with a power source (2) is arranged in the equipment case (1). The circuit board (13) has a plurality of signal processing modules which are electrically connected with a CPU controller (14). Multiple measuring sensors can respectively transfer the human body plural enginery index signals to electrical signals, which are subsequently processed and analyzed by the signal processing modules. The processed electric signals are transmitted to the CPU controller (14) for analyzing and colligation evaluating, or displaying by a terminal displayer (6), or transmitting the human body plural enginery indexes and the human body healthy evaluation results to a master computer for preserving and processing through data transfer interfaces (15), forming and printing reports.
    Type: Grant
    Filed: September 10, 2008
    Date of Patent: September 17, 2013
    Assignee: Shenzhen Good Family Enterprise Co., Ltd.
    Inventors: Yin-ing Sun, Zhiming Yao, Tao Han, Xianjun Yang, Xu Zhou
  • Patent number: 8443450
    Abstract: Circuits and methods are provided for detecting, identifying and/or removing undesired content. According to one embodiment, a method for virus processing content objects is provided. A type associated with a content object is determined. Based on the type, a subset of instructions is read from a virus signature memory containing intermixed op-codes of a first instruction type associated with primitive instructions and of a second instruction type associated with Content Pattern Recognition (CPR) instructions. Then, instructions of the first instruction type are assigned for execution to a primitive instruction pipe of a virus co-processor and instructions of the second instruction type are assigned for execution to a CPR instruction pipe of the virus co-processor. An instruction is executed by the CPR instruction pipe, including accessing a portion of the content object from a system memory and comparing the portion of the content object against a string associated with the instruction.
    Type: Grant
    Filed: December 17, 2009
    Date of Patent: May 14, 2013
    Assignee: Fortinet, Inc.
    Inventors: Xu Zhou, Lin Huang, Michael Xie
  • Patent number: 8411702
    Abstract: Methods and systems for a more efficient transmission of network traffic are provided. According to one embodiment, a method is provided for performing transport layer protocol segmentation offloading. Multiple buffer descriptors are stored in a system memory of a network device. The buffer descriptors contain information indicative of a starting address of a payload buffer stored in a user memory space of the system memory. The payload buffers contain payload data originated by a user process running on a host processor of the network device. The payload data is retrieved from the payload buffers on behalf of a network processor of the network device without copying the payload data from the user memory space to a kernel memory space of the system memory by performing direct virtual memory addressing of the user memory space. Finally, the payload data is segmented across one or more transport layer protocol packets.
    Type: Grant
    Filed: April 28, 2011
    Date of Patent: April 2, 2013
    Assignee: Fortinet, Inc.
    Inventors: Xu Zhou, David Chen, Lin Huang, Guansong Zhang