Patents by Inventor Neil MacAvoy

Neil MacAvoy 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: 7191433
    Abstract: The present application describes a compiler of a network packet classification programming language that generates code for processors such as an application processor and a processing engine. The programming language includes a variety of instructions including an instruction to declare a network protocol and an instruction to specify a rule and at least one action to perform if the rule applies. A processor executing instructions generated by the compiler assigns values based on instructions to declare a network protocol and applies the rule instructions to received packets. The programming language may also include other instructions such as an instruction to search a set of values and identify whether an encapsulated packet header is present in a packet.
    Type: Grant
    Filed: December 29, 2003
    Date of Patent: March 13, 2007
    Assignee: Intel Corporation
    Inventors: Charles E. Narad, Kevin Fall, Neil MacAvoy, Pradip Shankar, Leonard M. Rand, Jerry J. Hall
  • Patent number: 7171486
    Abstract: Described herein are techniques to perform reassembly of a Transmission Control Protocol (TCP) data stream from payloads of TCP segments of a bidirectional TCP connection between a first TCP end-point operating at a first network device and a second TCP end-point operating at a second network device.
    Type: Grant
    Filed: December 29, 2003
    Date of Patent: January 30, 2007
    Assignee: Intel Corpoartion
    Inventors: Charles E. Narad, Kevin Fall, Neil MacAvoy, Pradip Shankar, Leonard M. Rand, Jerry J. Hall
  • Patent number: 6859841
    Abstract: The present invention relates to a general-purpose programmable packet-processing platform for accelerating network infrastructure applications which have been structured so as to separate the stages of classification and action. Network packet classification, execution of actions upon those packets, management of buffer flow, encryption services, and management of Network Interface Controllers are accelerated through the use of a multiplicity of specialized modules. A language interface is defined for specifying both stateless and stateful classification of packets and to associate actions with classification results in order to efficiently utilize these specialized modules.
    Type: Grant
    Filed: February 27, 2002
    Date of Patent: February 22, 2005
    Assignee: Intel Corporation
    Inventors: Charles E. Narad, Kevin Fall, Neil MacAvoy, Pradip Shankar, Leonard M. Rand, Jerry J. Hall
  • Publication number: 20040148382
    Abstract: The present invention relates to a general-purpose programmable packet-processing platform for accelerating network infrastructure applications which have been structured so as to separate the stages of classification and action. Network packet classification, execution of actions upon those packets, management of buffer flow, encryption services, and management of Network Interface Controllers are accelerated through the use of a multiplicity of specialized modules. A language interface is defined for specifying both stateless and stateful classification of packets and to associate actions with classification results in order to efficiently utilize these specialized modules.
    Type: Application
    Filed: December 29, 2003
    Publication date: July 29, 2004
    Inventors: Charles E. Narad, Kevin Fall, Neil MacAvoy, Pradip Shankar, Leonard M. Rand, Jerry J. Hall
  • Publication number: 20040143655
    Abstract: The present invention relates to a general-purpose programmable packet-processing platform for accelerating network infrastructure applications which have been structured so as to separate the stages of classification and action. Network packet classification, execution of actions upon those packets, management of buffer flow, encryption services, and management of Network Interface Controllers are accelerated through the use of a multiplicity of specialized modules. A language interface is defined for specifying both stateless and stateful classification of packets and to associate actions with classification results in order to efficiently utilize these specialized modules.
    Type: Application
    Filed: December 29, 2003
    Publication date: July 22, 2004
    Inventors: Charles E. Narad, Kevin Fall, Neil MacAvoy, Pradip Shankar, Leonard M. Rand, Jerry J. Hall
  • Patent number: 6701338
    Abstract: The present invention relates to a general-purpose programmable packet-processing platform for accelerating network infrastructure applications which have been structured so as to separate the stages of classification and action. Network packet classification, execution of actions upon those packets, management of buffer flow, encryption services, and management of Network Interface Controllers are accelerated through the use of a multiplicity of specialized modules. A language interface is defined for specifying both stateless and stateful classification of packets and to associate actions with classification results in order to efficiently utilize these specialized modules.
    Type: Grant
    Filed: January 28, 2002
    Date of Patent: March 2, 2004
    Assignee: Intel Corporation
    Inventors: Charles E. Narad, Kevin Fall, Neil MacAvoy, Pradip Shankar, Leonard M. Rand, Jerry J. Hall
  • Patent number: 6625689
    Abstract: The present invention relates to a general-purpose programmable packet-processing platform for accelerating network infrastructure applications which have been structured so as to separate the stages of classification and action. Network packet classification, execution of actions upon those packets, management of buffer flow, encryption services, and management of Network Interface Controllers are accelerated through the use of a multiplicity of specialized modules. A language interface is defined for specifying both stateless and stateful classification of packets and to associate actions with classification results in order to efficiently utilize these specialized modules.
    Type: Grant
    Filed: March 18, 2002
    Date of Patent: September 23, 2003
    Assignee: Intel Corporation
    Inventors: Charles E. Narad, Kevin Fall, Neil MacAvoy, Pradip Shankar, Leonard M. Rand, Jerry J. Hall
  • Publication number: 20030061332
    Abstract: The present invention relates to a general-purpose programmable packet-processing platform for accelerating network infrastructure applications which have been structured so as to separate the stages of classification and action. Network packet classification, execution of actions upon those packets, management of buffer flow, encryption services, and management of Network Interface Controllers are accelerated through the use of a multiplicity of specialized modules. A language interface is defined for specifying both stateless and stateful classification of packets and to associate actions with classification results in order to efficiently utilize these specialized modules.
    Type: Application
    Filed: March 18, 2002
    Publication date: March 27, 2003
    Applicant: Intel Corporation
    Inventors: Charles E. Narad, Kevin Fall, Neil MacAvoy, Pradip Shankar, Leonard M. Rand, Jerry J. Hall
  • Publication number: 20030046423
    Abstract: The present invention relates to a general-purpose programmable packet-processing platform for accelerating network infrastructure applications which have been structured so as to separate the stages of classification and action. Network packet classification, execution of actions upon those packets, management of buffer flow, encryption services, and management of Network Interface Controllers are accelerated through the use of a multiplicity of specialized modules. A language interface is defined for specifying both stateless and stateful classification of packets and to associate actions with classification results in order to efficiently utilize these specialized modules.
    Type: Application
    Filed: February 27, 2002
    Publication date: March 6, 2003
    Inventors: Charles E. Narad, Kevin Fall, Neil MacAvoy, Pradip Shankar, Leonard M. Rand, Jerry J. Hall
  • Publication number: 20030005103
    Abstract: The present invention relates to a general-purpose programmable packet-processing platform for accelerating network infrastructure applications which have been structured so as to separate the stages of classification and action. Network packet classification, execution of actions upon those packets, management of buffer flow, encryption services, and management of Network Interface Controllers are accelerated through the use of a multiplicity of specialized modules. A language interface is defined for specifying both stateless and stateful classification of packets and to associate actions with classification results in order to efficiently utilize these specialized modules.
    Type: Application
    Filed: January 28, 2002
    Publication date: January 2, 2003
    Inventors: Charles E. Narad, Kevin Fall, Neil MacAvoy, Pradip Shankar, Leonard M. Rand, Jerry J. Hall
  • Patent number: 6421730
    Abstract: The present invention relates to a general-purpose programmable packet-processing platform for accelerating network infrastructure applications which have been structured so as to separate the stages of classification and action. Network packet classification, execution of actions upon those packets, management of buffer flow, encryption services, and management of Network Interface Controllers are accelerated through the use of a multiplicity of specialized modules. A language interface is defined for specifying both stateless and stateful classification of packets and to associate actions with classification results in order to efficiently utilize these specialized modules.
    Type: Grant
    Filed: April 1, 1999
    Date of Patent: July 16, 2002
    Assignee: Intel Corporation
    Inventors: Charles E. Narad, Kevin Fall, Neil MacAvoy, Pradip Shankar, Leonard M. Rand, Jerry J. Hall
  • Patent number: 6401117
    Abstract: The present invention relates to a general-purpose programmable packet-processing platform for accelerating network infrastructure applications which have been structured so as to separate the stages of classification and action. Network packet classification, execution of actions upon those packets, management of buffer flow, encryption services, and management of Network Interface Controllers are accelerated through the use of a multiplicity of specialized modules. A language interface is defined for specifying both stateless and stateful classification of packets and to associate actions with classification results in order to efficiently utilize these specialized modules.
    Type: Grant
    Filed: March 31, 1999
    Date of Patent: June 4, 2002
    Assignee: Intel Corporation
    Inventors: Charles E. Narad, Kevin Fall, Neil MacAvoy, Pradip Shankar, Leonard M. Rand, Jerry J. Hall
  • Patent number: 6157955
    Abstract: The present invention relates to a general-purpose programmable packet-processing platform for accelerating network infrastructure applications which have been structured so as to separate the stages of classification and action. Network packet classification, execution of actions upon those packets, management of buffer flow, encryption services, and management of Network Interface Controllers are accelerated through the use of a multiplicity of specialized modules. A language interface is defined for specifying both stateless and stateful classification of packets and to associate actions with classification results in order to efficiently utilize these specialized modules.
    Type: Grant
    Filed: June 15, 1998
    Date of Patent: December 5, 2000
    Assignee: Intel Corporation
    Inventors: Charles E. Narad, Kevin Fall, Neil MacAvoy, Pradip Shankar, Leonard M. Rand, Jerry J. Hall
  • Patent number: 5572734
    Abstract: A master bus interconnecting multiple masters is coupled via any number of intervening buses to a slave bus interconnecting multiple slaves and masters. A lock arbiter signal is passed to each successive bus-to-bus interface concurrent with an instruction issued by a master accessing a slave on a remote bus. Address, control, data, and lock arbiter signals are buffered in successive intervening bus-to-bus interfaces including the bus-to-bus interface to the slave bus. The lock arbiter signal when received by the slave bus-to-bus interface will set a lock arbiter register within bus slave bus-to-bus interface. Setting the lock arbiter register once a target slave has been accessed prevents any other master operating on the remote bus from using the remote bus or connecting to the remote bus-to-bus interface.
    Type: Grant
    Filed: May 2, 1995
    Date of Patent: November 5, 1996
    Assignee: Sun Microsystems, Inc.
    Inventors: Charles E. Narad, Neil MacAvoy