Patents by Inventor Tim Millet
Tim Millet 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: 8638802Abstract: Methods and systems are provided for steering network packets. According to one embodiment, a dynamically configurable steering table is stored within a memory of each network interface of a networking routing/switching device. The steering table represents a mapping that logically assigns each of the network interfaces to one of multiple packet processing resources of the network routing/switching device. The steering table has contained therein information indicative of a unique identifier/address of the assigned packet processing resource. Responsive to receiving a packet on a network interface, the network interface performs Layer 1 or Layer 2 steering of the received packet to the assigned packet processing resource by retrieving the information indicative of the unique identifier/address of the assigned packet processing resource from the steering table based on a channel identifier associated with the received packet and the received packet is processed by the assigned packet processing resource.Type: GrantFiled: November 29, 2011Date of Patent: January 28, 2014Assignee: Cisco Technology, Inc.Inventors: Sachin Desai, Tim Millet, Zahid Hussain, Paul Kim, Louise Yeung, Ken Yeung
-
Publication number: 20130308460Abstract: Methods and systems for providing IP services in an integrated fashion are provided. According to one embodiment, packets are load balanced among virtual routing processing resources of an IP service generator of a virtual router (VR) based switch. A packet flow cache is maintained with packet flow entries containing information indicative of packet processing actions for established packet flows. Deep packet classification is performed to determine whether a packet is associated with an established packet flow. If so, the packet is directed to one of multiple virtual services processing resources representing application-tailored engines configured to provide managed firewall services. If the packet is allowed, it is returned to the source virtual routing processing resource for forwarding.Type: ApplicationFiled: July 24, 2013Publication date: November 21, 2013Applicant: Fortinet, Inc.Inventors: Zahid Hussain, Tim Millet
-
Patent number: 8542595Abstract: Methods and systems for providing IP services in an integrated fashion are provided. According to one embodiment, a load associated with multiple virtual routing processing resources of an IP service generator of a virtual router (VR) based switch is monitored. Packets are load balanced among the virtual routing processing resources. A packet flow cache is maintained with packet flow entries containing information indicative of packet processing actions for established packet flows. Deep packet classification is performed to determine whether a packet is associated with an established packet flow. If so, the packet is directed to one of multiple virtual services processing resources representing application-tailored engines configured to provide network-based IP services including one or more of virtual private network (VPN) processing, firewall processing, Uniform Resource Locator (URL) filtering and anti-virus processing.Type: GrantFiled: November 13, 2011Date of Patent: September 24, 2013Assignee: Fortinet, Inc.Inventors: Zahid Hussain, Tim Millet
-
Publication number: 20130022049Abstract: Methods, systems and data structures for determining a token master on a ring network are provided. According to one embodiment, determining a token master on a ring network includes receiving a packet containing a network token at a first node on the network. If the network token does not arrive within a preselected timeout period, generating an arbitration token. If the packet contains an arbitration token, determining if the arbitration token was modified by a higher priority node of the network and if not, setting the first node as a token master and converting the arbitration token to a packet transmission token. Arbitration tokens are used to identify a token master that is responsible for generating a packet transmission token onto the network, whereas the packet transmission token authorizes a transmitting node that has most recently received the packet transmission token to transmit locally generated packets onto the network.Type: ApplicationFiled: June 25, 2012Publication date: January 24, 2013Applicant: FORTINET, INC.Inventor: Tim Millet
-
Patent number: 8306040Abstract: Methods and systems are provided for steering network packets. According to one embodiment a method is provided for steering incoming network packets. Each network packet processing resource of a network routing/switching device is dynamically assigned to one or more network interfaces of the network routing/switching device. Each of the network packet processing resources includes one or more processing elements and a memory. Incoming network packets received by the network interfaces are steered to an appropriate network packet processing resource based on the dynamic assignment.Type: GrantFiled: June 2, 2009Date of Patent: November 6, 2012Assignee: Fortinet, Inc.Inventors: Sachin Desai, Tim Millet, Zahid Hussain, Paul Kim, Louise Yeung, Ken Yeung
-
Patent number: 8300056Abstract: Exemplary embodiments of methods, apparatuses, and systems for seamlessly migrating a user visible display stream sent to a display device from one rendered display stream to another rendered display stream are described. For one embodiment, mirror video display streams are received from both a first graphics processing unit (GPU) and a second GPU, and the video display stream sent to a display device is switched from the video display stream from the first GPU to the video display stream from the second GPU, wherein the switching occurs during a blanking interval for the first GPU that overlaps with a blanking interval for the second GPU.Type: GrantFiled: October 13, 2008Date of Patent: October 30, 2012Assignee: Apple Inc.Inventors: Mike Nugent, Thomas Costa, Eve Brasfield, David Redman, Amanda Rainer, Tim Millet, Geoff Stahl, Adrian Sheppard, Ian Hendry, Ingrid Aligaen, Kenneth C. Dyke, Chris Niederauer, Michael Culbert
-
Patent number: 8208409Abstract: Methods, systems and data structure for facilitating identification of nodes in a ring network are provided. According to one embodiment, a data structure is stored on a computer-readable storage media of a node (e.g., a blade) participating in a ring network, within a multi-blade system, for example. The data structure includes a packet-ring master field, a control-node master field, a node characteristics field, a connection state field, a node identification field and a marker field. The packet-ring master field indicates whether the node is a current packet-ring master. The control-node master field indicates whether the node is a control-node master. The node characteristics field specifies per-node characteristics. The connection state field indicates a current connection state of the node. The node identification field specifies the node. The marker field indicates whether the data structure is a node discovery marker.Type: GrantFiled: April 18, 2010Date of Patent: June 26, 2012Assignee: Fortinet, Inc.Inventor: Tim Millet
-
Publication number: 20120069850Abstract: Methods and systems are provided for steering network packets. According to one embodiment, a dynamically configurable steering table is stored within a memory of each network interface of a networking routing/switching device. The steering table represents a mapping that logically assigns each of the network interfaces to one of multiple packet processing resources of the network routing/switching device. The steering table has contained therein information indicative of a unique identifier/address of the assigned packet processing resource. Responsive to receiving a packet on a network interface, the network interface performs Layer 1 or Layer 2 steering of the received packet to the assigned packet processing resource by retrieving the information indicative of the unique identifier/address of the assigned packet processing resource from the steering table based on a channel identifier associated with the received packet and the received packet is processed by the assigned packet processing resource.Type: ApplicationFiled: November 29, 2011Publication date: March 22, 2012Applicant: FORTINET, INC.Inventors: Sachin Desai, Tim Millet, Zahid Hussain, Paul Kim, Louise Yeung, Ken Yeung
-
Publication number: 20120057460Abstract: Methods and systems for providing IP services in an integrated fashion are provided. According to one embodiment, a load associated with multiple virtual routing processing resources of an IP service generator of a virtual router (VR) based switch is monitored. Packets are load balanced among the virtual routing processing resources. A packet flow cache is maintained with packet flow entries containing information indicative of packet processing actions for established packet flows. Deep packet classification is performed to determine whether a packet is associated with an established packet flow. If so, the packet is directed to one of multiple virtual services processing resources representing application-tailored engines configured to provide network-based IP services including one or more of virtual private network (VPN) processing, firewall processing, Uniform Resource Locator (URL) filtering and anti-virus processing.Type: ApplicationFiled: November 13, 2011Publication date: March 8, 2012Applicant: FORTINET, INC.Inventors: Zahid Hussain, Tim Millet
-
Patent number: 8111690Abstract: Methods and systems are provided for routing traffic through a virtual router-based network switch. According to one embodiment, a flow data structure is established that identifies current packet flows associated with multiple virtual routers in the virtual router-based network device. When an incoming packet is received by the virtual router-based network device, it is then determined whether the incoming packet is associated with a current packet flow by accessing the flow data structure based on a header associated with the incoming packet. If it is determined that the incoming packet is associated with the current packet flow, then the incoming packet is hardware forwarded via a network interface of the virtual router-based network device without intervention by a processor of the virtual router-based network device, otherwise the incoming packet is forwarded to software on the processor for flow learning.Type: GrantFiled: October 29, 2008Date of Patent: February 7, 2012Assignee: Google Inc.Inventors: Zahid Hussain, Samir Jain, Naveed Alam, Joseph Cheng, Greg Lockwood, Tim Millet
-
Patent number: 8068503Abstract: Methods and systems are provided for steering network packets. According to one embodiment, a mapping associates a processing resource with a network interface module (netmod) and/or a number of line interface ports included within the netmod. In one embodiment, the mapping is configurable within the processing resource and pushed to the netmod. The netmod uses the mapping to steer network packets to the processing resource when the packets conform to the mapping. The mapping may be additionally used to identify a specific process that is to be performed against the packets once the processing resource receives the steered packets from the netmod.Type: GrantFiled: March 10, 2007Date of Patent: November 29, 2011Assignee: Fortinet, Inc.Inventors: Sachin Desai, Tim Millet, Zahid Hussain, Paul Kim, Louise Yeung, Ken Yeung
-
Patent number: 8064462Abstract: Methods and systems for providing IP services in an integrated fashion are provided. According to one embodiment, a system includes a switch fabric and a line interface/network module, multiple virtual routing engines (VREs) and a virtual services engine (VSE) coupled with the switch fabric. The line interface/network module receives packets, steers ingress packets to a selected VRE and transmits egress packets according to their relative priority. VREs determines if a packet associated with a packet flow requires processing by the VSE by performing flow-based packet classification on the packet and evaluating forwarding state information associated with previously stored flow learning results. The VSE includes a central processing unit configured to perform firewall processing, Uniform Resource Locator (URL) filtering and anti-virus processing. If the packet is determined to require processing by the VSE, then the packet is steered to the VSE for firewall, URL filtering and/or anti-virus processing.Type: GrantFiled: May 17, 2010Date of Patent: November 22, 2011Assignee: Fortinet, Inc.Inventors: Zahid Hussain, Tim Millet
-
Publication number: 20110200044Abstract: Methods and systems are provided for hardware-accelerated packet multicasting in a virtual routing system. According to one embodiment, a virtual routing engine (VRE) including virtual routing processors and corresponding memory systems are provided. The VRE implements virtual routers (VRs) operable on the virtual routing processors and associated routing contexts utilizing potentially overlapping multicast address spaces resident in the memory systems. Multicasting of multicast flows originated by subscribers of a service provider is simultaneously performed on behalf of the subscribers. A VR is selected to handle multicast packets associated with a multicast flow. A routing context of the VRE is switched to one associated with the VR. A packet of the multicast flow is forwarded to multiple destinations by reading a portion of the packet from a common buffer for each instance of multicasting and applying transform control instructions to the packet for each instance of multicasting.Type: ApplicationFiled: April 24, 2011Publication date: August 18, 2011Applicant: FORTINET, INC.Inventors: Joseph Cheng, Zahid Hussain, Tim Millet
-
Patent number: 7933269Abstract: Methods and systems are provided for hardware-accelerated packet multicasting in a virtual routing system. According to one embodiment, a multicast packet is received at an ingress system of a packet-forwarding engine (PFE). The ingress system identifies flow classification indices for the multicast packet. Then, for each instance of multicasting, the ingress system sends a single copy of the multicast packet and the flow classification indices to an egress system of the PFE. The single copy of the multicast packet is buffered in a memory accessible by the egress system. The egress system prepares the multicast packet for transmission by for each flow classification index, identifying corresponding transform control instructions based on the flow classification index, reading the single copy of the multicast packet from the memory, causing the multicast packet to be transformed in accordance with the identified transform control instructions and outputting the transformed multicast packet.Type: GrantFiled: September 3, 2007Date of Patent: April 26, 2011Assignee: Fortinet, Inc.Inventors: Joseph Cheng, Zahid Hussain, Tim Millet
-
Patent number: 7890663Abstract: Methods are provided for determining a master node on a ring network. According to one embodiment, a first node on the ring network initiates circulation of an arbitration token by (i) determining an arbitration token timeout period has elapsed and (ii) transmitting the arbitration token to a neighboring node. Upon receipt of the arbitration token by a node, it determines its relative priority by comparing its ID to an ID field of the arbitration token, initialized by the first node. If the node is determined to be higher priority, then it overwrites the ID field and retransmits the arbitration token onto the ring network. If the node is determined to be lower priority, then the node retransmits the arbitration token without overwriting the ID field. If the node is determined to be of equal priority and the node is the first node, then it assumes the master node role.Type: GrantFiled: July 29, 2006Date of Patent: February 15, 2011Assignee: Fortinet, Inc.Inventor: Tim Millet
-
Publication number: 20100220732Abstract: Methods and systems for providing IP services in an integrated fashion are provided. According to one embodiment, a system includes a switch fabric and a line interface/network module, multiple virtual routing engines (VREs) and a virtual services engine (VSE) coupled with the switch fabric. The line interface/network module receives packets, steers ingress packets to a selected VRE and transmits egress packets according to their relative priority. VREs determines if a packet associated with a packet flow requires processing by the VSE by performing flow-based packet classification on the packet and evaluating forwarding state information associated with previously stored flow learning results. The VSE includes a central processing unit configured to perform firewall processing, Uniform Resource Locator (URL) filtering and anti-virus processing. If the packet is determined to require processing by the VSE, then the packet is steered to the VSE for firewall, URL filtering and/or anti-virus processing.Type: ApplicationFiled: May 17, 2010Publication date: September 2, 2010Applicant: FORTINET, INC.Inventors: Zahid Hussain, Tim Millet
-
Publication number: 20100189016Abstract: Methods, systems and data structure for facilitating identification of nodes in a ring network are provided. According to one embodiment, a data structure is stored on a computer-readable storage media of a node (e.g., a blade) participating in a ring network, within a multi-blade system, for example. The data structure includes a packet-ring master field, a control-node master field, a node characteristics field, a connection state field, a node identification field and a marker field. The packet-ring master field indicates whether the node is a current packet-ring master. The control-node master field indicates whether the node is a control-node master. The node characteristics field specifies per-node characteristics. The connection state field indicates a current connection state of the node. The node identification field specifies the node. The marker field indicates whether the data structure is a node discovery marker.Type: ApplicationFiled: April 18, 2010Publication date: July 29, 2010Applicant: FORTINET, INC.Inventor: Tim Millet
-
Patent number: 7720053Abstract: A system and method for providing IP services. A packet is received at a line interface/network module and forwarded to a virtual routing engine The virtual routing engine determines if the packet requires processing by a virtual services engine. If the packet requires processing by the virtual services engine, the packet is routed to the virtual services engine for processing.Type: GrantFiled: May 19, 2008Date of Patent: May 18, 2010Assignee: Fortinet, Inc.Inventors: Zahid Hussain, Tim Millet
-
Publication number: 20100091025Abstract: Exemplary embodiments of methods, apparatuses, and systems for seamlessly migrating a user visible display stream sent to a display device from one rendered display stream to another rendered display stream are described. For one embodiment, mirror video display streams are received from both a first graphics processing unit (GPU) and a second GPU, and the video display stream sent to a display device is switched from the video display stream from the first GPU to the video display stream from the second GPU, wherein the switching occurs during a blanking interval for the first GPU that overlaps with a blanking interval for the second GPU.Type: ApplicationFiled: October 13, 2008Publication date: April 15, 2010Inventors: Mike Nugent, Thomas Costa, Eve Brasfield, David Redman, Amanda Rainer, Tim Millet, Geoff Stahl, Adrian Sheppard, Ian Hendry, Ingrid Aligaen, Kenneth C. Dyke, Chris Niederauer, Michael Culbert
-
Patent number: 7668087Abstract: Methods and systems are provided for applying metering and rate-limiting in a virtual router environment and supporting a hierarchy of metering/rate-limiting contexts per packet flow. According to one embodiment, multiple first level metering options and multiple second level metering options associated with a hierarchy of metering levels are provided. A virtual routing engine receives packets associated with a first packet flow and packets associated with a second packet flow. The virtual routing engine performs a first type of metering of the first level metering options on the packets associated with the first packet flow using a first metering control block (MCB) and performs a second type of metering of the second level metering options on the packets associated with the first packet flow and the packets associated with the second flow using a second MCB.Type: GrantFiled: January 8, 2007Date of Patent: February 23, 2010Assignee: Fortinet, Inc.Inventors: Zahid Hussain, Sachin Desai, Naveed Alam, Joseph Cheng, Tim Millet