US5606665A - Buffer descriptor prefetch in network and I/O design - Google Patents
Buffer descriptor prefetch in network and I/O design Download PDFInfo
- Publication number
- US5606665A US5606665A US08/269,595 US26959594A US5606665A US 5606665 A US5606665 A US 5606665A US 26959594 A US26959594 A US 26959594A US 5606665 A US5606665 A US 5606665A
- Authority
- US
- United States
- Prior art keywords
- buffer
- memory
- data
- network adapter
- descriptors
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/90—Buffering arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/40—Network security protocols
Definitions
- the present invention relates generally to communications networks, and more particularly, to efficient, flexible network adapters.
- a network adapter manages the transmission and reception of data packets by transferring data between the network and a shared memory in a computer system.
- the shared memory is used by several different devices including the system CPU, I/O devices and disks as well as the network.
- the network adapter accesses the shared memory by a shared system bus.
- the shared memory has buffers in which data packets are stored.
- the buffers are accessed through buffer descriptors.
- Buffer descriptors define specific information about the buffers and the data packets stored in the buffers, e.g. location, data type, length, and size.
- the buffer descriptors are located in the shared memory along with the data packets.
- the network adapter To transmit or receive a data packet, the network adapter must open a buffer descriptor, transfer the data packet to or from a buffer and then close the buffer descriptor.
- a buffer descriptor is opened by moving it out of the system memory to a memory in the network adapter.
- a buffer descriptor is closed by moving it back into the shared memory from the memory in the network adapter.
- Each descriptor and data transfer operation consists of a system bus request-grant phase and a data bus cycle in which a buffer descriptor or a data packet is transferred.
- the time elapsed during the request-grant phase is called latency.
- latency can be high, typically several microseconds, while the data bus cycle is fast, typically a number of nanoseconds.
- the speed of transmitting or receiving data packets is limited by latency.
- the latency in opening and closing buffer descriptors is a large component in the delays in packet reception and transmission.
- a data packet is copied through the adapter into the shared memory.
- the adapter buffers the data packet in a first-in, first-out queue (FIFO) on a network controller chip in the adapter.
- FIFO first-in, first-out queue
- a typical FIFO may, for example, be 128-1024 bytes while data packets may be as large as 4500 bytes. Therefore, typically only small data packets may reside in entirety in the FIFO. Larger data packets need to be transferred through. Controlling access to the system bus in order to access buffer descriptors is key to data transfer. In order to transfer data, the adapter needs to know where to put the data in the system memory, that is, the adapter needs to access buffer descriptors in order to know if a particular location is available.
- FIFO size is dependent on system bus latency. The larger the delay from request to grant, the larger the FIFO needs to be in order to transfer data through the network adapter without losing data packets. A larger FIFO would increase the efficiency of data transfer but it would also require a larger, more expensive network controller chip which would need more power.
- the problems of transferring data efficiently while keeping network controller chips small and network adapters low in cost are solved by the present invention of a network adapter which performs buffer descriptor prefetch.
- the invention improves the efficiency of buffer descriptor processing by performing descriptor prefetches, where multiple descriptors are read within the same descriptor bus transaction.
- the invention reads multiple buffer descriptors each time the bus is accessed. The data packet may then be stored directly to system memory.
- FIG. 1 shows a computer system with a network adapter
- FIG. 2 shows an exemplary buffer descriptor
- FIG. 3 is a flow chart of the data packet receive process.
- FIG. 1 shows a computer system 10 with a network adapter 20 attached to a network 30.
- the computer system 10 has a CPU 35, a computer memory 40 and a disk controller 43 attached to the network adapter 20 through a system bus 45.
- the computer memory 40 has a receive buffer descriptor ring 42, a transmit buffer descriptor ring 43, and buffers 50, 51, 52, 53, 54, 55, 56, 57.
- the receive buffer descriptor ring 42 has buffer descriptors 60, 61, 62, 63 and the transmit buffer descriptor ring 43 has buffer descriptors 64, 65, 66, 67.
- the buffer descriptors in the receive buffer descriptor ring 42 and the transmit buffer descriptor ring 43 are physically contiguous except for the last buffer descriptor in each ring.
- the last buffer in each ring points to the first buffer in the ring. So, in the receive buffer ring 42, buffer descriptor 63 points to buffer descriptor 60 and in the transmit buffer descriptor ring 43, buffer descriptor 67 points to buffer descriptor 64.
- the network adapter 20 has a controller 70, an adapter memory 75 and a first-in, first-out queue (FIFO) 80.
- the controller 70 acts as an interface between the network 30 and the network adapter 20 and also as an interface between the system bus 45 and the network adapter 20.
- the network adapter 20 manages the transmission and reception of data packets in the computer system 10 by transferring data packets between the network 30 and the computer memory 40, where the data packets are stored.
- the data packets are stored in the buffers 50, 51, 52, 53, 54, 55, 56, 57 in the computer memory 40.
- there are only eight buffers however, there may be as many as several hundred buffers in a typical computer memory.
- Each buffer 50, 51, 52, 53, 54, 55, 56, 57 in the computer memory 40 has an associated buffer descriptor 60, 61, 62, 63, 64, 65, 66, 67.
- Each buffer descriptor 60, 61, 62, 63, 64, 65, 66, 67 stores the location of the associated buffer 50, 51, 52, 53, 54, 55, 56, 57 and has an indicator which shows whether or not the associated buffer 50, 51, 52, 53, 54, 55, 56, 57 is available to the network adapter for data storage or for data transmission.
- Each buffer descriptor 60, 61, 62, 63, 64, 65, 66, 67 also contains information about the data stored in the associated data buffer 50, 51, 52, 53, 54, 55, 56, 57 such as data type and length, and location of the buffer.
- the network adapter 20 In order to copy a received data packet to the shared memory 40 or to transmit a data packet from the shared memory 40, the network adapter 20 must first open buffer descriptors in the adapter memory 75. To open buffer descriptors, the network adapter 20 must get access to the system bus 45. The network adapter 20 must wait according to the computer system priority rules to use the system bus 45 as the system bus 45 is a resource for which the network adapter 20 competes with the CPU 35 and the disk controller 43. When the network adapter 20 gets control of the system bus 45, it accesses a multiple number of buffer descriptors. For example, for data reception, the network controller chip 70 would read the buffer descriptors 60, 61, 62, 63 to the adapter memory 75 in a single bus transaction.
- buffer descriptors 60, 61, 62, 63 are opened. Each of the buffer descriptors 60, 61, 62, 63 is examined to see if the associated buffer 50, 51, 52, 53 is available. If a buffer is available for data, a packet of data is transferred in and the buffer descriptor is updated with a new status and then the buffer descriptor is closed by transferring the updated buffer descriptor to the computer memory.
- the CPU 35 fills buffers associated with buffer descriptors in the buffer descriptor transmit ring 43 in the computer memory 40. For example, for a four-buffer data packet, the CPU 35 fills the buffers 54, 55, 56, 57, updates the buffer descriptors 64, 65, 66, 67 with the new status of the buffers 54, 55, 56, 57, and signals the network adapter 20 that there is data to be transmitted.
- the network adapter 20 receives the signal from the CPU 35, the network adapter 20 opens, in a single bus transaction, a plurality of buffer descriptors from the data transmit ring 43, in the exemplary case, buffer descriptors 64, 65, 66, 67.
- Each buffer descriptor 64, 65, 66, 67 is examined to see if it contains data. If a buffer has a data packet to be transmitted, the packet is transferred out onto the network, the associated buffer descriptor is updated with a new status and then the buffer descriptor is closed.
- the network adapter 20 polls the buffer descriptors in the buffer descriptor transmit ring 43 for their status and transmits data from the buffers without prompting from the CPU 35. In polling, the network adapter 20 periodically examines the transmit buffer descriptor ring 43 for data to be transmitted. As above, the network adapter 20 opens a multiple number of buffer descriptors in the same bus transaction, examines them for data to be transmitted, transmits the data, updates the buffer descriptors, closes the buffer descriptors and then opens a multiple number of buffer descriptors that come next in the buffer descriptor transmit ring 43.
- FIG. 2 shows an exemplary buffer descriptor 100.
- the buffer descriptor 100 has five fields, an ownership bit field 104, a buffer location field 108, a data type field 112, a data size field 116 and a next descriptor field 120.
- the ownership bit field 104 indicates whether the buffer associated with the buffer descriptor is available to the network adapter 20 for data transmission or reception, or whether the buffer is owned by the CPU 35. In the exemplary embodiment, the ownership bit field 104 is set to yes if the buffer is available to the network adapter 20 and to no if it is not.
- the buffer location field 108 holds a pointer to the buffer associated with the buffer descriptor 100.
- the data type field 112 and the data size field 116 hold information about the data stored in the buffer. Buffer descriptors are kept in the shared memory 40 in the form of a linked list.
- the next descriptor field 120 holds a pointer to the next descriptor in the ring.
- the network controller 70 opens a multiple number of receive buffer descriptors under certain conditions.
- the controller 70 waits until it receives a data reception command from a software driver in the CPU 35 or the controller 70 waits for a data packet to be received, block 200.
- the controller 70 then checks if it already has open buffer descriptors and decides if more are needed, block 205. If more buffer descriptors are needed, the controller 70 fetches one or more buffer descriptors in a single bus transaction, block 210.
- the controller 70 begins checking the buffer descriptors for availability of their associated buffers.
- the controller 70 checks the ownership bit of the buffer descriptors one by one, block 215. If none of the fetched buffer descriptors are available then the controller goes back to the mode of waiting for a software driver command to fetch more buffer descriptors, block 220.
- the controller 70 when the controller 70 finds an available buffer descriptor, the controller 70 looks for data to copy into the buffer associated with the available buffer descriptor, block 230. In a second embodiment of the invention, the controller starts a descriptor read timer, block 225, before looking for data to copy.
- the descriptor read timer is used to limit the rate of buffer descriptor prefetch when there is no more data from a received packet waiting to be copied.
- An exemplary timer value is one millisecond.
- the controller 70 finds data to be copied, block 230, it copies data from the packet to the available buffer, block 235. In the first embodiment of the invention, if the controller 70 finds no data, it waits for a data packet to arrive. In the second embodiment of the invention, the controller checks to see if more buffer descriptors are needed, block 240. If no buffer descriptors are needed, the controller waits, as in the first embodiment for data packets to be received, block 230. If more buffer descriptors are needed, the controller 70 checks to see if the descriptor read timer has expired, block 245. If the timer has not expired, the controller does not fetch additional buffer descriptors and waits for data to be received, block 230. If the timer has expired, the controller fetches one or more buffer descriptors in a single bus transaction, block 210.
- the controller continues to copy data to the available buffer until it reaches the end of the buffer or the end of the packet, block 250.
- the buffer descriptor is updated with the new status and the buffer descriptor is closed, block 255.
- the controller 70 then goes to the next buffer descriptor, block 260, and checks the ownership bit of that buffer descriptor to see if the associated buffer is available, block 265. If the buffer is available, then the controller 70 goes to look for data to copy into the associated buffer, block 230. If the buffer is not available, the controller fetches one or more buffer descriptor in a single bus transaction, block 210.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer And Data Communications (AREA)
Abstract
Description
Claims (6)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US08/269,595 US5606665A (en) | 1994-07-01 | 1994-07-01 | Buffer descriptor prefetch in network and I/O design |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US08/269,595 US5606665A (en) | 1994-07-01 | 1994-07-01 | Buffer descriptor prefetch in network and I/O design |
Publications (1)
Publication Number | Publication Date |
---|---|
US5606665A true US5606665A (en) | 1997-02-25 |
Family
ID=23027921
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US08/269,595 Expired - Lifetime US5606665A (en) | 1994-07-01 | 1994-07-01 | Buffer descriptor prefetch in network and I/O design |
Country Status (1)
Country | Link |
---|---|
US (1) | US5606665A (en) |
Cited By (102)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5752078A (en) * | 1995-07-10 | 1998-05-12 | International Business Machines Corporation | System for minimizing latency data reception and handling data packet error if detected while transferring data packet from adapter memory to host memory |
US5828901A (en) * | 1995-12-21 | 1998-10-27 | Cirrus Logic, Inc. | Method and apparatus for placing multiple frames of data in a buffer in a direct memory access transfer |
US5870627A (en) * | 1995-12-20 | 1999-02-09 | Cirrus Logic, Inc. | System for managing direct memory access transfer in a multi-channel system using circular descriptor queue, descriptor FIFO, and receive status queue |
US6052387A (en) * | 1997-10-31 | 2000-04-18 | Ncr Corporation | Enhanced interface for an asynchronous transfer mode segmentation controller |
EP1014648A2 (en) * | 1998-09-30 | 2000-06-28 | STMicroelectronics, Inc. | Method and network device for creating buffer structures in shared memory |
US6202107B1 (en) | 1998-11-19 | 2001-03-13 | Sun Microsystems, Inc. | Host controller interface descriptor fetching unit |
US20010037387A1 (en) * | 2000-03-21 | 2001-11-01 | F5 Networks, Inc., | Method and system for optimizing a network by independently scaling control segments and data flow |
US20010047415A1 (en) * | 2000-01-31 | 2001-11-29 | Skene Bryan D. | Method and system for enabling persistent access to virtual servers by an ldns server |
US6327615B1 (en) * | 1998-09-30 | 2001-12-04 | Stmicroelectronics, Inc. | Method and system of controlling transfer of data by updating descriptors in descriptor rings |
US20010052016A1 (en) * | 1999-12-13 | 2001-12-13 | Skene Bryan D. | Method and system for balancing load distrubution on a wide area network |
US6374300B2 (en) | 1999-07-15 | 2002-04-16 | F5 Networks, Inc. | Method and system for storing load balancing information with an HTTP cookie |
US6405219B2 (en) | 1999-06-22 | 2002-06-11 | F5 Networks, Inc. | Method and system for automatically updating the version of a set of files stored on content servers |
US20020138618A1 (en) * | 2000-03-21 | 2002-09-26 | F5 Networks, Inc. | Simplified method for processing multiple connections from the same client |
US20020138655A1 (en) * | 2001-03-21 | 2002-09-26 | Jenison Lucas M. | Reducing memory copies by a network controller |
US6499077B1 (en) * | 1999-12-30 | 2002-12-24 | Intel Corporation | Bus interface unit for reflecting state information for a transfer request to a requesting device |
US6601116B1 (en) * | 1998-07-26 | 2003-07-29 | Marvell Semiconductor Israel Ltd. | Network switch having descriptor cache and method thereof |
US6675238B1 (en) * | 1999-09-03 | 2004-01-06 | Intel Corporation | Each of a plurality of descriptors having a completion indicator and being stored in a cache memory of an input/output processor |
US6782465B1 (en) * | 1999-10-20 | 2004-08-24 | Infineon Technologies North America Corporation | Linked list DMA descriptor architecture |
US20050138212A1 (en) * | 2003-12-23 | 2005-06-23 | Intel Corporation | Page-aware descriptor management |
US20050193158A1 (en) * | 2004-03-01 | 2005-09-01 | Udayakumar Srinivasan | Intelligent PCI bridging |
US6963954B1 (en) * | 2001-09-19 | 2005-11-08 | Cisco Technology, Inc. | Method and apparatus for optimizing prefetching based on memory addresses |
US6970933B1 (en) | 1999-07-15 | 2005-11-29 | F5 Networks, Inc. | Enabling application level persistence between a server and another resource over a network |
US7146354B1 (en) | 1999-06-18 | 2006-12-05 | F5 Networks, Inc. | Method and system for network load balancing with a compound data structure |
US7287084B1 (en) | 1999-07-15 | 2007-10-23 | F5 Networks, Inc. | Enabling encryption of application level persistence between a server and a client |
US7346695B1 (en) | 2002-10-28 | 2008-03-18 | F5 Networks, Inc. | System and method for performing application level persistence |
US7975025B1 (en) | 2008-07-08 | 2011-07-05 | F5 Networks, Inc. | Smart prefetching of data over a network |
US7996886B1 (en) | 2002-09-03 | 2011-08-09 | F5 Networks, Inc. | Method and system for providing persistence in a secure network access |
CN102753978A (en) * | 2009-09-21 | 2012-10-24 | Pocared诊断公司 | System for conducting the identification of bacteria in biological samples |
US8396836B1 (en) | 2011-06-30 | 2013-03-12 | F5 Networks, Inc. | System for mitigating file virtualization storage import latency |
US8463909B1 (en) | 2010-09-15 | 2013-06-11 | F5 Networks, Inc. | Systems and methods for managing server resources |
US8566444B1 (en) | 2008-10-30 | 2013-10-22 | F5 Networks, Inc. | Methods and system for simultaneous multiple rules checking |
US8566452B1 (en) | 2006-08-03 | 2013-10-22 | F5 Networks, Inc. | Intelligent HTTP based load-balancing, persistence, and application traffic management of SSL VPN tunnels |
US8627467B2 (en) | 2011-01-14 | 2014-01-07 | F5 Networks, Inc. | System and method for selectively storing web objects in a cache memory based on policy decisions |
US8630174B1 (en) | 2010-09-14 | 2014-01-14 | F5 Networks, Inc. | System and method for post shaping TCP packetization |
US8806056B1 (en) | 2009-11-20 | 2014-08-12 | F5 Networks, Inc. | Method for optimizing remote file saves in a failsafe way |
US8806053B1 (en) | 2008-04-29 | 2014-08-12 | F5 Networks, Inc. | Methods and systems for optimizing network traffic using preemptive acknowledgment signals |
US8804504B1 (en) | 2010-09-16 | 2014-08-12 | F5 Networks, Inc. | System and method for reducing CPU load in processing PPP packets on a SSL-VPN tunneling device |
US8868961B1 (en) | 2009-11-06 | 2014-10-21 | F5 Networks, Inc. | Methods for acquiring hyper transport timing and devices thereof |
US8879431B2 (en) | 2011-05-16 | 2014-11-04 | F5 Networks, Inc. | Method for load balancing of requests' processing of diameter servers |
US8886981B1 (en) | 2010-09-15 | 2014-11-11 | F5 Networks, Inc. | Systems and methods for idle driven scheduling |
US8908545B1 (en) | 2010-07-08 | 2014-12-09 | F5 Networks, Inc. | System and method for handling TCP performance in network access with driver initiated application tunnel |
US8959571B2 (en) | 2010-10-29 | 2015-02-17 | F5 Networks, Inc. | Automated policy builder |
US9083760B1 (en) | 2010-08-09 | 2015-07-14 | F5 Networks, Inc. | Dynamic cloning and reservation of detached idle connections |
US9143451B2 (en) | 2007-10-01 | 2015-09-22 | F5 Networks, Inc. | Application layer network traffic prioritization |
US9141625B1 (en) | 2010-06-22 | 2015-09-22 | F5 Networks, Inc. | Methods for preserving flow state during virtual machine migration and devices thereof |
US9154423B1 (en) | 2012-05-01 | 2015-10-06 | F5 Networks, Inc. | Minimize SYN-flood issues with flow cache while maintaining performance |
US9172753B1 (en) | 2012-02-20 | 2015-10-27 | F5 Networks, Inc. | Methods for optimizing HTTP header based authentication and devices thereof |
US9203771B1 (en) | 2012-07-23 | 2015-12-01 | F5 Networks, Inc. | Hot service flow hardware offloads based on service priority and resource usage |
US9231879B1 (en) | 2012-02-20 | 2016-01-05 | F5 Networks, Inc. | Methods for policy-based network traffic queue management and devices thereof |
US9246819B1 (en) | 2011-06-20 | 2016-01-26 | F5 Networks, Inc. | System and method for performing message-based load balancing |
US9244843B1 (en) | 2012-02-20 | 2016-01-26 | F5 Networks, Inc. | Methods for improving flow cache bandwidth utilization and devices thereof |
US9270766B2 (en) | 2011-12-30 | 2016-02-23 | F5 Networks, Inc. | Methods for identifying network traffic characteristics to correlate and manage one or more subsequent flows and devices thereof |
US9313047B2 (en) | 2009-11-06 | 2016-04-12 | F5 Networks, Inc. | Handling high throughput and low latency network data packets in a traffic management device |
US9338095B2 (en) | 2012-05-01 | 2016-05-10 | F5 Networks, Inc. | Data flow segment optimized for hot flows |
US9420049B1 (en) | 2010-06-30 | 2016-08-16 | F5 Networks, Inc. | Client side human user indicator |
US9497614B1 (en) | 2013-02-28 | 2016-11-15 | F5 Networks, Inc. | National traffic steering device for a better control of a specific wireless/LTE network |
US9503375B1 (en) | 2010-06-30 | 2016-11-22 | F5 Networks, Inc. | Methods for managing traffic in a multi-service environment and devices thereof |
US9525632B1 (en) | 2012-05-01 | 2016-12-20 | F5 Networks, Inc. | Minimize recycle SYN issues for split TCP hot flows to improve system reliability and performance |
US9535842B2 (en) | 2014-08-28 | 2017-01-03 | Oracle International Corporation | System and method for performing message driven prefetching at the network interface |
US9554276B2 (en) | 2010-10-29 | 2017-01-24 | F5 Networks, Inc. | System and method for on the fly protocol conversion in obtaining policy enforcement information |
US9578090B1 (en) | 2012-11-07 | 2017-02-21 | F5 Networks, Inc. | Methods for provisioning application delivery service and devices thereof |
WO2017112233A1 (en) * | 2015-12-20 | 2017-06-29 | Intel Corporation | Hardware accelerators and methods for stateful compression and decompression operations |
US10015143B1 (en) | 2014-06-05 | 2018-07-03 | F5 Networks, Inc. | Methods for securing one or more license entitlement grants and devices thereof |
US10015286B1 (en) | 2010-06-23 | 2018-07-03 | F5 Networks, Inc. | System and method for proxying HTTP single sign on across network domains |
US10033837B1 (en) | 2012-09-29 | 2018-07-24 | F5 Networks, Inc. | System and method for utilizing a data reducing module for dictionary compression of encoded data |
USRE47019E1 (en) | 2010-07-14 | 2018-08-28 | F5 Networks, Inc. | Methods for DNSSEC proxying and deployment amelioration and systems thereof |
US10097616B2 (en) | 2012-04-27 | 2018-10-09 | F5 Networks, Inc. | Methods for optimizing service of content requests and devices thereof |
US10122630B1 (en) | 2014-08-15 | 2018-11-06 | F5 Networks, Inc. | Methods for network traffic presteering and devices thereof |
US10135831B2 (en) | 2011-01-28 | 2018-11-20 | F5 Networks, Inc. | System and method for combining an access control system with a traffic management system |
US10157280B2 (en) | 2009-09-23 | 2018-12-18 | F5 Networks, Inc. | System and method for identifying security breach attempts of a website |
US10182013B1 (en) | 2014-12-01 | 2019-01-15 | F5 Networks, Inc. | Methods for managing progressive image delivery and devices thereof |
US10187317B1 (en) | 2013-11-15 | 2019-01-22 | F5 Networks, Inc. | Methods for traffic rate control and devices thereof |
US10230566B1 (en) | 2012-02-17 | 2019-03-12 | F5 Networks, Inc. | Methods for dynamically constructing a service principal name and devices thereof |
US10310897B2 (en) | 2016-09-30 | 2019-06-04 | Intel Corporation | Hardware accelerators and methods for offload operations |
US10375155B1 (en) | 2013-02-19 | 2019-08-06 | F5 Networks, Inc. | System and method for achieving hardware acceleration for asymmetric flow connections |
US10404698B1 (en) | 2016-01-15 | 2019-09-03 | F5 Networks, Inc. | Methods for adaptive organization of web application access points in webtops and devices thereof |
US10412198B1 (en) | 2016-10-27 | 2019-09-10 | F5 Networks, Inc. | Methods for improved transmission control protocol (TCP) performance visibility and devices thereof |
US10505818B1 (en) | 2015-05-05 | 2019-12-10 | F5 Networks. Inc. | Methods for analyzing and load balancing based on server health and devices thereof |
US10505792B1 (en) | 2016-11-02 | 2019-12-10 | F5 Networks, Inc. | Methods for facilitating network traffic analytics and devices thereof |
US10721269B1 (en) | 2009-11-06 | 2020-07-21 | F5 Networks, Inc. | Methods and system for returning requests with javascript for clients before passing a request to a server |
US10791119B1 (en) | 2017-03-14 | 2020-09-29 | F5 Networks, Inc. | Methods for temporal password injection and devices thereof |
US10791088B1 (en) | 2016-06-17 | 2020-09-29 | F5 Networks, Inc. | Methods for disaggregating subscribers via DHCP address translation and devices thereof |
US10797888B1 (en) | 2016-01-20 | 2020-10-06 | F5 Networks, Inc. | Methods for secured SCEP enrollment for client devices and devices thereof |
US10812266B1 (en) | 2017-03-17 | 2020-10-20 | F5 Networks, Inc. | Methods for managing security tokens based on security violations and devices thereof |
US10834065B1 (en) | 2015-03-31 | 2020-11-10 | F5 Networks, Inc. | Methods for SSL protected NTLM re-authentication and devices thereof |
US10931662B1 (en) | 2017-04-10 | 2021-02-23 | F5 Networks, Inc. | Methods for ephemeral authentication screening and devices thereof |
US10972453B1 (en) | 2017-05-03 | 2021-04-06 | F5 Networks, Inc. | Methods for token refreshment based on single sign-on (SSO) for federated identity environments and devices thereof |
US11044200B1 (en) | 2018-07-06 | 2021-06-22 | F5 Networks, Inc. | Methods for service stitching using a packet header and devices thereof |
US11063758B1 (en) | 2016-11-01 | 2021-07-13 | F5 Networks, Inc. | Methods for facilitating cipher selection and devices thereof |
USRE48725E1 (en) | 2012-02-20 | 2021-09-07 | F5 Networks, Inc. | Methods for accessing data in a compressed file system and devices thereof |
US11122042B1 (en) | 2017-05-12 | 2021-09-14 | F5 Networks, Inc. | Methods for dynamically managing user access control and devices thereof |
US11178150B1 (en) | 2016-01-20 | 2021-11-16 | F5 Networks, Inc. | Methods for enforcing access control list based on managed application and devices thereof |
US11223689B1 (en) | 2018-01-05 | 2022-01-11 | F5 Networks, Inc. | Methods for multipath transmission control protocol (MPTCP) based session migration and devices thereof |
US11343237B1 (en) | 2017-05-12 | 2022-05-24 | F5, Inc. | Methods for managing a federated identity environment using security and access control data and devices thereof |
US11350254B1 (en) | 2015-05-05 | 2022-05-31 | F5, Inc. | Methods for enforcing compliance policies and devices thereof |
US11496438B1 (en) | 2017-02-07 | 2022-11-08 | F5, Inc. | Methods for improved network security using asymmetric traffic delivery and devices thereof |
TWI792728B (en) * | 2021-11-29 | 2023-02-11 | 瑞昱半導體股份有限公司 | Device for packet processing acceleration |
US11658995B1 (en) | 2018-03-20 | 2023-05-23 | F5, Inc. | Methods for dynamically mitigating network attacks and devices thereof |
US11757946B1 (en) | 2015-12-22 | 2023-09-12 | F5, Inc. | Methods for analyzing network traffic and enforcing network policies and devices thereof |
US11838851B1 (en) | 2014-07-15 | 2023-12-05 | F5, Inc. | Methods for managing L7 traffic classification and devices thereof |
US11895138B1 (en) | 2015-02-02 | 2024-02-06 | F5, Inc. | Methods for improving web scanner accuracy and devices thereof |
US12003422B1 (en) | 2018-09-28 | 2024-06-04 | F5, Inc. | Methods for switching network packets based on packet data and devices |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5293487A (en) * | 1991-12-27 | 1994-03-08 | Digital Equipment Corporation | Network adapter with high throughput data transfer circuit to optimize network data transfers, with host receive ring resource monitoring and reporting |
US5299313A (en) * | 1992-07-28 | 1994-03-29 | 3Com Corporation | Network interface with host independent buffer management |
US5390299A (en) * | 1991-12-27 | 1995-02-14 | Digital Equipment Corporation | System for using three different methods to report buffer memory occupancy information regarding fullness-related and/or packet discard-related information |
US5483640A (en) * | 1993-02-26 | 1996-01-09 | 3Com Corporation | System for managing data flow among devices by storing data and structures needed by the devices and transferring configuration information from processor to the devices |
US5488724A (en) * | 1990-05-29 | 1996-01-30 | Advanced Micro Devices, Inc. | Network controller with memory request and acknowledgement signals and a network adapter therewith |
-
1994
- 1994-07-01 US US08/269,595 patent/US5606665A/en not_active Expired - Lifetime
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5488724A (en) * | 1990-05-29 | 1996-01-30 | Advanced Micro Devices, Inc. | Network controller with memory request and acknowledgement signals and a network adapter therewith |
US5293487A (en) * | 1991-12-27 | 1994-03-08 | Digital Equipment Corporation | Network adapter with high throughput data transfer circuit to optimize network data transfers, with host receive ring resource monitoring and reporting |
US5390299A (en) * | 1991-12-27 | 1995-02-14 | Digital Equipment Corporation | System for using three different methods to report buffer memory occupancy information regarding fullness-related and/or packet discard-related information |
US5299313A (en) * | 1992-07-28 | 1994-03-29 | 3Com Corporation | Network interface with host independent buffer management |
US5483640A (en) * | 1993-02-26 | 1996-01-09 | 3Com Corporation | System for managing data flow among devices by storing data and structures needed by the devices and transferring configuration information from processor to the devices |
Cited By (141)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5752078A (en) * | 1995-07-10 | 1998-05-12 | International Business Machines Corporation | System for minimizing latency data reception and handling data packet error if detected while transferring data packet from adapter memory to host memory |
US5870627A (en) * | 1995-12-20 | 1999-02-09 | Cirrus Logic, Inc. | System for managing direct memory access transfer in a multi-channel system using circular descriptor queue, descriptor FIFO, and receive status queue |
US5828901A (en) * | 1995-12-21 | 1998-10-27 | Cirrus Logic, Inc. | Method and apparatus for placing multiple frames of data in a buffer in a direct memory access transfer |
US6052387A (en) * | 1997-10-31 | 2000-04-18 | Ncr Corporation | Enhanced interface for an asynchronous transfer mode segmentation controller |
US6601116B1 (en) * | 1998-07-26 | 2003-07-29 | Marvell Semiconductor Israel Ltd. | Network switch having descriptor cache and method thereof |
US6941392B2 (en) | 1998-07-26 | 2005-09-06 | Marvell Semiconductor Israel Ltd. | Buffer switch having descriptor cache and method thereof |
US20050005037A1 (en) * | 1998-07-26 | 2005-01-06 | Marvell International Ltd. | Buffer switch having descriptor cache and method thereof |
US6738838B2 (en) | 1998-07-26 | 2004-05-18 | Marvell International, Ltd. | Network switch having descriptor cache and method thereof |
US6327615B1 (en) * | 1998-09-30 | 2001-12-04 | Stmicroelectronics, Inc. | Method and system of controlling transfer of data by updating descriptors in descriptor rings |
EP1014648A3 (en) * | 1998-09-30 | 2004-04-14 | STMicroelectronics, Inc. | Method and network device for creating buffer structures in shared memory |
EP1014648A2 (en) * | 1998-09-30 | 2000-06-28 | STMicroelectronics, Inc. | Method and network device for creating buffer structures in shared memory |
US6324597B2 (en) | 1998-11-19 | 2001-11-27 | Sun Microsystems, Inc. | Host controller interface descriptor fetching unit |
US6772237B2 (en) | 1998-11-19 | 2004-08-03 | Sun Microsystems, Inc. | Host controller interface descriptor fetching unit |
US6202107B1 (en) | 1998-11-19 | 2001-03-13 | Sun Microsystems, Inc. | Host controller interface descriptor fetching unit |
US7590625B1 (en) | 1999-06-18 | 2009-09-15 | F5 Networks, Inc. | Method and system for network load balancing with a compound data structure |
US7146354B1 (en) | 1999-06-18 | 2006-12-05 | F5 Networks, Inc. | Method and system for network load balancing with a compound data structure |
US7113962B1 (en) | 1999-06-22 | 2006-09-26 | F5 Networks, Inc. | Method and system for automatically updating content stored on servers connected by a network |
US7707182B1 (en) | 1999-06-22 | 2010-04-27 | F5 Networks, Inc. | Method and system for automatically updating the version of a set of files stored on content servers |
US6405219B2 (en) | 1999-06-22 | 2002-06-11 | F5 Networks, Inc. | Method and system for automatically updating the version of a set of files stored on content servers |
US6473802B2 (en) | 1999-07-15 | 2002-10-29 | F5 Networks, Inc. | Method and system for storing load balancing information with an HTTP cookie |
US7606912B1 (en) | 1999-07-15 | 2009-10-20 | F5 Networks, Inc. | System and method for performing application level persistence |
US8392563B1 (en) | 1999-07-15 | 2013-03-05 | F5 Networks, Inc. | System and method for performing application level persistence |
US7831712B1 (en) | 1999-07-15 | 2010-11-09 | F5 Networks, Inc. | System and method for performing application level persistence |
US7287084B1 (en) | 1999-07-15 | 2007-10-23 | F5 Networks, Inc. | Enabling encryption of application level persistence between a server and a client |
US8103770B1 (en) | 1999-07-15 | 2012-01-24 | F5 Networks, Inc. | System and method for performing application level persistence |
US6970933B1 (en) | 1999-07-15 | 2005-11-29 | F5 Networks, Inc. | Enabling application level persistence between a server and another resource over a network |
US6374300B2 (en) | 1999-07-15 | 2002-04-16 | F5 Networks, Inc. | Method and system for storing load balancing information with an HTTP cookie |
US6675238B1 (en) * | 1999-09-03 | 2004-01-06 | Intel Corporation | Each of a plurality of descriptors having a completion indicator and being stored in a cache memory of an input/output processor |
US6782465B1 (en) * | 1999-10-20 | 2004-08-24 | Infineon Technologies North America Corporation | Linked list DMA descriptor architecture |
US7441045B2 (en) | 1999-12-13 | 2008-10-21 | F5 Networks, Inc. | Method and system for balancing load distribution on a wide area network |
US20010052016A1 (en) * | 1999-12-13 | 2001-12-13 | Skene Bryan D. | Method and system for balancing load distrubution on a wide area network |
US6499077B1 (en) * | 1999-12-30 | 2002-12-24 | Intel Corporation | Bus interface unit for reflecting state information for a transfer request to a requesting device |
US6665756B2 (en) | 1999-12-30 | 2003-12-16 | Intel Corporation | Bus interface unit for reflecting state information for a transfer request to a requesting device |
US7047301B2 (en) | 2000-01-31 | 2006-05-16 | F5 Networks, Inc. | Method and system for enabling persistent access to virtual servers by an LDNS server |
US20010047415A1 (en) * | 2000-01-31 | 2001-11-29 | Skene Bryan D. | Method and system for enabling persistent access to virtual servers by an ldns server |
US7707289B1 (en) | 2000-01-31 | 2010-04-27 | F5 Networks, Inc. | Method and system for enabling persistent access to virtual servers by an LDNS server |
US20080256239A1 (en) * | 2000-03-21 | 2008-10-16 | F5 Networks, Inc. | Method and system for optimizing a network by independently scaling control segments and data flow |
US8788665B2 (en) | 2000-03-21 | 2014-07-22 | F5 Networks, Inc. | Method and system for optimizing a network by independently scaling control segments and data flow |
US20020138618A1 (en) * | 2000-03-21 | 2002-09-26 | F5 Networks, Inc. | Simplified method for processing multiple connections from the same client |
US8380854B2 (en) | 2000-03-21 | 2013-02-19 | F5 Networks, Inc. | Simplified method for processing multiple connections from the same client |
US7343413B2 (en) | 2000-03-21 | 2008-03-11 | F5 Networks, Inc. | Method and system for optimizing a network by independently scaling control segments and data flow |
US9077554B1 (en) | 2000-03-21 | 2015-07-07 | F5 Networks, Inc. | Simplified method for processing multiple connections from the same client |
US8447871B1 (en) | 2000-03-21 | 2013-05-21 | F5 Networks, Inc. | Simplified method for processing multiple connections from the same client |
US20010037387A1 (en) * | 2000-03-21 | 2001-11-01 | F5 Networks, Inc., | Method and system for optimizing a network by independently scaling control segments and data flow |
US9647954B2 (en) | 2000-03-21 | 2017-05-09 | F5 Networks, Inc. | Method and system for optimizing a network by independently scaling control segments and data flow |
US20020138655A1 (en) * | 2001-03-21 | 2002-09-26 | Jenison Lucas M. | Reducing memory copies by a network controller |
US6963954B1 (en) * | 2001-09-19 | 2005-11-08 | Cisco Technology, Inc. | Method and apparatus for optimizing prefetching based on memory addresses |
US8769265B1 (en) | 2002-09-03 | 2014-07-01 | F5 Networks, Inc. | Method and system for providing persistence in a secure network access |
US7996886B1 (en) | 2002-09-03 | 2011-08-09 | F5 Networks, Inc. | Method and system for providing persistence in a secure network access |
US8407771B1 (en) | 2002-09-03 | 2013-03-26 | F5 Networks, Inc. | Method and system for providing persistence in a secure network access |
US9210163B1 (en) | 2002-09-03 | 2015-12-08 | F5 Networks, Inc. | Method and system for providing persistence in a secure network access |
US7346695B1 (en) | 2002-10-28 | 2008-03-18 | F5 Networks, Inc. | System and method for performing application level persistence |
US20050138212A1 (en) * | 2003-12-23 | 2005-06-23 | Intel Corporation | Page-aware descriptor management |
US7114016B2 (en) * | 2003-12-23 | 2006-09-26 | Intel Corporation | Page-aware descriptor management |
US7424562B2 (en) * | 2004-03-01 | 2008-09-09 | Cisco Technology, Inc. | Intelligent PCI bridging consisting of prefetching data based upon descriptor data |
US20050193158A1 (en) * | 2004-03-01 | 2005-09-01 | Udayakumar Srinivasan | Intelligent PCI bridging |
US8566452B1 (en) | 2006-08-03 | 2013-10-22 | F5 Networks, Inc. | Intelligent HTTP based load-balancing, persistence, and application traffic management of SSL VPN tunnels |
US9143451B2 (en) | 2007-10-01 | 2015-09-22 | F5 Networks, Inc. | Application layer network traffic prioritization |
US8806053B1 (en) | 2008-04-29 | 2014-08-12 | F5 Networks, Inc. | Methods and systems for optimizing network traffic using preemptive acknowledgment signals |
US8326923B1 (en) | 2008-07-08 | 2012-12-04 | F5 Networks, Inc. | Smart prefetching of data over a network |
US7975025B1 (en) | 2008-07-08 | 2011-07-05 | F5 Networks, Inc. | Smart prefetching of data over a network |
US8566444B1 (en) | 2008-10-30 | 2013-10-22 | F5 Networks, Inc. | Methods and system for simultaneous multiple rules checking |
CN102753978A (en) * | 2009-09-21 | 2012-10-24 | Pocared诊断公司 | System for conducting the identification of bacteria in biological samples |
CN102753978B (en) * | 2009-09-21 | 2016-09-28 | Pocared诊断公司 | For identifying the system of antibacterial in biological sample |
US10157280B2 (en) | 2009-09-23 | 2018-12-18 | F5 Networks, Inc. | System and method for identifying security breach attempts of a website |
US10721269B1 (en) | 2009-11-06 | 2020-07-21 | F5 Networks, Inc. | Methods and system for returning requests with javascript for clients before passing a request to a server |
US8868961B1 (en) | 2009-11-06 | 2014-10-21 | F5 Networks, Inc. | Methods for acquiring hyper transport timing and devices thereof |
US11108815B1 (en) | 2009-11-06 | 2021-08-31 | F5 Networks, Inc. | Methods and system for returning requests with javascript for clients before passing a request to a server |
US9313047B2 (en) | 2009-11-06 | 2016-04-12 | F5 Networks, Inc. | Handling high throughput and low latency network data packets in a traffic management device |
US8806056B1 (en) | 2009-11-20 | 2014-08-12 | F5 Networks, Inc. | Method for optimizing remote file saves in a failsafe way |
US9141625B1 (en) | 2010-06-22 | 2015-09-22 | F5 Networks, Inc. | Methods for preserving flow state during virtual machine migration and devices thereof |
US10015286B1 (en) | 2010-06-23 | 2018-07-03 | F5 Networks, Inc. | System and method for proxying HTTP single sign on across network domains |
US9503375B1 (en) | 2010-06-30 | 2016-11-22 | F5 Networks, Inc. | Methods for managing traffic in a multi-service environment and devices thereof |
US9420049B1 (en) | 2010-06-30 | 2016-08-16 | F5 Networks, Inc. | Client side human user indicator |
US8908545B1 (en) | 2010-07-08 | 2014-12-09 | F5 Networks, Inc. | System and method for handling TCP performance in network access with driver initiated application tunnel |
USRE47019E1 (en) | 2010-07-14 | 2018-08-28 | F5 Networks, Inc. | Methods for DNSSEC proxying and deployment amelioration and systems thereof |
US9083760B1 (en) | 2010-08-09 | 2015-07-14 | F5 Networks, Inc. | Dynamic cloning and reservation of detached idle connections |
US8630174B1 (en) | 2010-09-14 | 2014-01-14 | F5 Networks, Inc. | System and method for post shaping TCP packetization |
US8886981B1 (en) | 2010-09-15 | 2014-11-11 | F5 Networks, Inc. | Systems and methods for idle driven scheduling |
US8463909B1 (en) | 2010-09-15 | 2013-06-11 | F5 Networks, Inc. | Systems and methods for managing server resources |
US8804504B1 (en) | 2010-09-16 | 2014-08-12 | F5 Networks, Inc. | System and method for reducing CPU load in processing PPP packets on a SSL-VPN tunneling device |
US9554276B2 (en) | 2010-10-29 | 2017-01-24 | F5 Networks, Inc. | System and method for on the fly protocol conversion in obtaining policy enforcement information |
US8959571B2 (en) | 2010-10-29 | 2015-02-17 | F5 Networks, Inc. | Automated policy builder |
US8627467B2 (en) | 2011-01-14 | 2014-01-07 | F5 Networks, Inc. | System and method for selectively storing web objects in a cache memory based on policy decisions |
US10135831B2 (en) | 2011-01-28 | 2018-11-20 | F5 Networks, Inc. | System and method for combining an access control system with a traffic management system |
US8879431B2 (en) | 2011-05-16 | 2014-11-04 | F5 Networks, Inc. | Method for load balancing of requests' processing of diameter servers |
US9356998B2 (en) | 2011-05-16 | 2016-05-31 | F5 Networks, Inc. | Method for load balancing of requests' processing of diameter servers |
US9246819B1 (en) | 2011-06-20 | 2016-01-26 | F5 Networks, Inc. | System and method for performing message-based load balancing |
US8396836B1 (en) | 2011-06-30 | 2013-03-12 | F5 Networks, Inc. | System for mitigating file virtualization storage import latency |
US9270766B2 (en) | 2011-12-30 | 2016-02-23 | F5 Networks, Inc. | Methods for identifying network traffic characteristics to correlate and manage one or more subsequent flows and devices thereof |
US9985976B1 (en) | 2011-12-30 | 2018-05-29 | F5 Networks, Inc. | Methods for identifying network traffic characteristics to correlate and manage one or more subsequent flows and devices thereof |
US10230566B1 (en) | 2012-02-17 | 2019-03-12 | F5 Networks, Inc. | Methods for dynamically constructing a service principal name and devices thereof |
USRE48725E1 (en) | 2012-02-20 | 2021-09-07 | F5 Networks, Inc. | Methods for accessing data in a compressed file system and devices thereof |
US9231879B1 (en) | 2012-02-20 | 2016-01-05 | F5 Networks, Inc. | Methods for policy-based network traffic queue management and devices thereof |
US9244843B1 (en) | 2012-02-20 | 2016-01-26 | F5 Networks, Inc. | Methods for improving flow cache bandwidth utilization and devices thereof |
US9172753B1 (en) | 2012-02-20 | 2015-10-27 | F5 Networks, Inc. | Methods for optimizing HTTP header based authentication and devices thereof |
US10097616B2 (en) | 2012-04-27 | 2018-10-09 | F5 Networks, Inc. | Methods for optimizing service of content requests and devices thereof |
US9762492B2 (en) | 2012-05-01 | 2017-09-12 | F5 Networks, Inc. | Data flow segment optimized for hot flows |
US9525632B1 (en) | 2012-05-01 | 2016-12-20 | F5 Networks, Inc. | Minimize recycle SYN issues for split TCP hot flows to improve system reliability and performance |
US9154423B1 (en) | 2012-05-01 | 2015-10-06 | F5 Networks, Inc. | Minimize SYN-flood issues with flow cache while maintaining performance |
US9338095B2 (en) | 2012-05-01 | 2016-05-10 | F5 Networks, Inc. | Data flow segment optimized for hot flows |
US9596184B1 (en) | 2012-07-23 | 2017-03-14 | F5 Networks, Inc. | Hot service flow hardware offloads based on service priority and resource usage |
US9203771B1 (en) | 2012-07-23 | 2015-12-01 | F5 Networks, Inc. | Hot service flow hardware offloads based on service priority and resource usage |
US10033837B1 (en) | 2012-09-29 | 2018-07-24 | F5 Networks, Inc. | System and method for utilizing a data reducing module for dictionary compression of encoded data |
US9578090B1 (en) | 2012-11-07 | 2017-02-21 | F5 Networks, Inc. | Methods for provisioning application delivery service and devices thereof |
US10375155B1 (en) | 2013-02-19 | 2019-08-06 | F5 Networks, Inc. | System and method for achieving hardware acceleration for asymmetric flow connections |
US9497614B1 (en) | 2013-02-28 | 2016-11-15 | F5 Networks, Inc. | National traffic steering device for a better control of a specific wireless/LTE network |
US10187317B1 (en) | 2013-11-15 | 2019-01-22 | F5 Networks, Inc. | Methods for traffic rate control and devices thereof |
US10015143B1 (en) | 2014-06-05 | 2018-07-03 | F5 Networks, Inc. | Methods for securing one or more license entitlement grants and devices thereof |
US11838851B1 (en) | 2014-07-15 | 2023-12-05 | F5, Inc. | Methods for managing L7 traffic classification and devices thereof |
US10122630B1 (en) | 2014-08-15 | 2018-11-06 | F5 Networks, Inc. | Methods for network traffic presteering and devices thereof |
US9535842B2 (en) | 2014-08-28 | 2017-01-03 | Oracle International Corporation | System and method for performing message driven prefetching at the network interface |
US10182013B1 (en) | 2014-12-01 | 2019-01-15 | F5 Networks, Inc. | Methods for managing progressive image delivery and devices thereof |
US11895138B1 (en) | 2015-02-02 | 2024-02-06 | F5, Inc. | Methods for improving web scanner accuracy and devices thereof |
US10834065B1 (en) | 2015-03-31 | 2020-11-10 | F5 Networks, Inc. | Methods for SSL protected NTLM re-authentication and devices thereof |
US11350254B1 (en) | 2015-05-05 | 2022-05-31 | F5, Inc. | Methods for enforcing compliance policies and devices thereof |
US10505818B1 (en) | 2015-05-05 | 2019-12-10 | F5 Networks. Inc. | Methods for analyzing and load balancing based on server health and devices thereof |
TWI729024B (en) * | 2015-12-20 | 2021-06-01 | 美商英特爾股份有限公司 | Hardware accelerators and methods for stateful compression and decompression operations |
WO2017112233A1 (en) * | 2015-12-20 | 2017-06-29 | Intel Corporation | Hardware accelerators and methods for stateful compression and decompression operations |
US10169073B2 (en) | 2015-12-20 | 2019-01-01 | Intel Corporation | Hardware accelerators and methods for stateful compression and decompression operations |
US11757946B1 (en) | 2015-12-22 | 2023-09-12 | F5, Inc. | Methods for analyzing network traffic and enforcing network policies and devices thereof |
US10404698B1 (en) | 2016-01-15 | 2019-09-03 | F5 Networks, Inc. | Methods for adaptive organization of web application access points in webtops and devices thereof |
US10797888B1 (en) | 2016-01-20 | 2020-10-06 | F5 Networks, Inc. | Methods for secured SCEP enrollment for client devices and devices thereof |
US11178150B1 (en) | 2016-01-20 | 2021-11-16 | F5 Networks, Inc. | Methods for enforcing access control list based on managed application and devices thereof |
US10791088B1 (en) | 2016-06-17 | 2020-09-29 | F5 Networks, Inc. | Methods for disaggregating subscribers via DHCP address translation and devices thereof |
US10310897B2 (en) | 2016-09-30 | 2019-06-04 | Intel Corporation | Hardware accelerators and methods for offload operations |
US10412198B1 (en) | 2016-10-27 | 2019-09-10 | F5 Networks, Inc. | Methods for improved transmission control protocol (TCP) performance visibility and devices thereof |
US11063758B1 (en) | 2016-11-01 | 2021-07-13 | F5 Networks, Inc. | Methods for facilitating cipher selection and devices thereof |
US10505792B1 (en) | 2016-11-02 | 2019-12-10 | F5 Networks, Inc. | Methods for facilitating network traffic analytics and devices thereof |
US11496438B1 (en) | 2017-02-07 | 2022-11-08 | F5, Inc. | Methods for improved network security using asymmetric traffic delivery and devices thereof |
US10791119B1 (en) | 2017-03-14 | 2020-09-29 | F5 Networks, Inc. | Methods for temporal password injection and devices thereof |
US10812266B1 (en) | 2017-03-17 | 2020-10-20 | F5 Networks, Inc. | Methods for managing security tokens based on security violations and devices thereof |
US10931662B1 (en) | 2017-04-10 | 2021-02-23 | F5 Networks, Inc. | Methods for ephemeral authentication screening and devices thereof |
US10972453B1 (en) | 2017-05-03 | 2021-04-06 | F5 Networks, Inc. | Methods for token refreshment based on single sign-on (SSO) for federated identity environments and devices thereof |
US11343237B1 (en) | 2017-05-12 | 2022-05-24 | F5, Inc. | Methods for managing a federated identity environment using security and access control data and devices thereof |
US11122042B1 (en) | 2017-05-12 | 2021-09-14 | F5 Networks, Inc. | Methods for dynamically managing user access control and devices thereof |
US11223689B1 (en) | 2018-01-05 | 2022-01-11 | F5 Networks, Inc. | Methods for multipath transmission control protocol (MPTCP) based session migration and devices thereof |
US11658995B1 (en) | 2018-03-20 | 2023-05-23 | F5, Inc. | Methods for dynamically mitigating network attacks and devices thereof |
US11044200B1 (en) | 2018-07-06 | 2021-06-22 | F5 Networks, Inc. | Methods for service stitching using a packet header and devices thereof |
US12003422B1 (en) | 2018-09-28 | 2024-06-04 | F5, Inc. | Methods for switching network packets based on packet data and devices |
TWI792728B (en) * | 2021-11-29 | 2023-02-11 | 瑞昱半導體股份有限公司 | Device for packet processing acceleration |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5606665A (en) | Buffer descriptor prefetch in network and I/O design | |
US6021446A (en) | Network device driver performing initial packet processing within high priority hardware interrupt service routine and then finishing processing within low priority software interrupt service routine | |
US7464199B2 (en) | Method, system, and program for handling Input/Output commands | |
US5812774A (en) | System for transmitting data packet from buffer by reading buffer descriptor from descriptor memory of network adapter without accessing buffer descriptor in shared memory | |
US6397316B2 (en) | System for reducing bus overhead for communication with a network interface | |
US5745684A (en) | Apparatus and method for providing a generic interface between a host system and an asynchronous transfer mode core functional block | |
EP0577115B1 (en) | Programmed I/O Ethernet adapter with early interrupts for accelerating data transfer | |
US4860244A (en) | Buffer system for input/output portion of digital data processing system | |
US5630059A (en) | Expedited message transfer in a multi-nodal data processing system | |
US6334162B1 (en) | Efficient data transfer mechanism for input/out devices having a device driver generating a descriptor queue and monitoring a status queue | |
EP0241129B1 (en) | Addressing arrangement for a RAM buffer controller | |
EP0602769B1 (en) | A multiprocessor system | |
US6615282B1 (en) | Adaptive messaging | |
US20050235072A1 (en) | Data storage controller | |
US7146451B2 (en) | PCI bridge and data transfer methods | |
US5991304A (en) | Method and apparatus for minimizing asynchronous transmit FIFO under-run and receive FIFO over-run conditions | |
US6170030B1 (en) | Method and apparatus for restreaming data that has been queued in a bus bridging device | |
US6477610B1 (en) | Reordering responses on a data bus based on size of response | |
US5129072A (en) | System for minimizing initiator processor interrupts by protocol controller in a computer bus system | |
US5386514A (en) | Queue apparatus and mechanics for a communications interface architecture | |
GB2349717A (en) | Low latency network | |
EP1891503B1 (en) | Concurrent read response acknowledge enhanced direct memory access unit | |
US5930483A (en) | Method and apparatus for communications control on a small computer system interface | |
US6973528B2 (en) | Data caching on bridge following disconnect | |
US5613141A (en) | Data storage subsystem having dedicated links connecting a host adapter, controller and direct access storage devices |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: DIGITAL EQUIPMENT CORPORATION, MASSACHUSETTS Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:YANG, HENRY SHO-CHE;SATHAYE, SHIRISH SHARAD;BEN-MICHAEL, SIMONI;AND OTHERS;REEL/FRAME:007079/0728;SIGNING DATES FROM 19940616 TO 19940628 |
|
STCF | Information on status: patent grant |
Free format text: PATENTED CASE |
|
FPAY | Fee payment |
Year of fee payment: 4 |
|
AS | Assignment |
Owner name: COMPAQ INFORMATION TECHNOLOGIES GROUP, L.P., TEXAS Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:DIGITAL EQUIPMENT CORPORATION;COMPAQ COMPUTER CORPORATION;REEL/FRAME:012447/0903;SIGNING DATES FROM 19991209 TO 20010620 |
|
AS | Assignment |
Owner name: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P., TEXAS Free format text: CHANGE OF NAME;ASSIGNOR:COMPAQ INFORMANTION TECHNOLOGIES GROUP LP;REEL/FRAME:014102/0224 Effective date: 20021001 |
|
FPAY | Fee payment |
Year of fee payment: 8 |
|
FPAY | Fee payment |
Year of fee payment: 12 |
|
REMI | Maintenance fee reminder mailed |