CN102082688B - Method for realizing management of TCP (transmission control protocol) out-of-order buffer by means of combination of software and hardware - Google Patents
Method for realizing management of TCP (transmission control protocol) out-of-order buffer by means of combination of software and hardware Download PDFInfo
- Publication number
- CN102082688B CN102082688B CN201010611748.7A CN201010611748A CN102082688B CN 102082688 B CN102082688 B CN 102082688B CN 201010611748 A CN201010611748 A CN 201010611748A CN 102082688 B CN102082688 B CN 102082688B
- Authority
- CN
- China
- Prior art keywords
- order
- tcp
- software
- hardware
- connection
- 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.)
- Active
Links
Landscapes
- Computer And Data Communications (AREA)
Abstract
The invention provides a method for realizing management of a TCP (transmission control protocol) out-of-order buffer by means of combination of software and hardware. The hardware is responsible of the application and use of the out-of-order buffer, the software is responsible for the release of the out-of-order buffer, and the method comprises the following steps: using a hardware network card to receive an out-of-order TCP message, then applying for the out-of-order buffer, and notifying the software of an out-of-order TCP connection; and connecting the out-of-order buffer into a linked list in series when the software of an interface library processes the out-of-order TCP connection, and using the software to look up the linked list and notifying the hardware of releasing the buffer when the out-of-order buffer needs to be deleted. By adopting the method, the management of the large-capacity TCP out-of-order buffer is realized, and a TCP unloading system can perform out-of-order rearrangement on a high-speed network.
Description
Technical field
The present invention relates to network data processing field, be specifically related to a kind of software and hardware combining and realize the method for the out of order buffer management of TCP.
Background technology
TCP Unloading Technology is that the TCP/IP network protocol stack processing in host software is cured in network interface card hardware and is realized, to reduce system cpu load, increases the technology of network I/O bandwidth.TCP uninstalling system generally comprises two parts function, and Part I is TCP connection status management, safeguards each TCP connection beginning, transfer of data, the state of closing by TCP connection table.Part II is tcp data management, is used for the data of out of order TCP message to resequence, and the data of TCP transmission are extracted and submit to main frame.
Carry out the out of order rearrangement of TCP in hardware time, need to use the out of order data of buffer cache, need complicated out of order buffer management mechanism, wherein the most important thing is distribution and the release of out of order buffering area.
In general TCP uninstalling system, the every sub-distribution of hardware and discharge out of order buffering area and all will repeatedly access plate and carry internal memory, particularly when buffer release district, often need to search the oldest buffering area, the plate that is limited to hardware carries memory size and special chip clock frequency, typical hardware system is difficult to realize searches efficiently, causes managing jumbo out of order buffering area, is difficult to meet the out of order rearrangement requirement of tcp of express network.
Summary of the invention
The out of order buffer management ability of TCP that the object of the invention is to strengthen by software hardware, makes the out of order buffering area of the large capacity of TCP uninstalling system support.
Software and hardware combining realizes a method for the out of order buffer management of TCP, comprises the following steps:
A, network interface card receive after the message of a TCP connection, and out of order if message has occurred, slave plate carries in internal memory and applies for being used for the message of this connection to sort in an out of order buffering area;
B, network interface card are in the time of the message connecting to this TCP of software transmission, and by a mark is set in the header of message, this connection of notice software has occurred out of order, has taken an out of order buffering area;
C, interface library are received after the message that out of order TCP connection occurs, this TCP are connected and is connected in series in an out of order TCP chained list, and the heap(ed) capacity of chained list is safeguarded;
D, in the time that out of order TCP capacity exceedes the threshold value of systemic presupposition, interface library software is found out the out of order TCP that needs discharge and is connected from chained list, notice hardware discharges the out of order buffering area of this connection.
A preferred technical solution of the present invention is:
When in described D step, software is searched the out of order buffering area that needs release, can be by the most always connecting, the methods such as minimum use connection are selected, and notice discharges the out of order buffering area of this connection.
The present invention has realized the out of order buffer management of large capacity I CP, makes TCP uninstalling system can on express network, carry out out of order rearrangement.
Brief description of the drawings
Fig. 1 is system composition structure chart of the present invention
Embodiment
In hardware, use the out of order buffering area that plate carries in internal memory to sort to out of order message, in out of order buffer management process, hardware is responsible for application and the use of out of order buffering area.
Software, in application software api interface storehouse, is set up the chained list of the out of order buffering area in using, and out of order buffering area is managed, and software is responsible for the release of out of order buffering area.
Implementation method and process are as follows:
(1) hardware network interface card receives out of order TCP message, applies for out of order buffering area.
Hardware network interface card receives after the message of a TCP connection, and out of order if message has occurred, slave plate carries in internal memory and applies for being used for the message of this connection to sort in an out of order buffering area.
(2) hardware network interface card notice software TCP connection has occurred out of order.
Hardware is in the time of the message connecting to this TCP of software transmission, and by a mark is set in the header of message, this connection of notice software has occurred out of order, has taken an out of order buffering area.
(3) interface library software is processed out of order TCP connection, notice hardware buffer release district.
Interface library is received after the message that out of order TCP connection occurs, this TCP is connected and is connected in series in an out of order TCP chained list, and the heap(ed) capacity of chained list is safeguarded, in the time that out of order TCP capacity exceedes the threshold value of systemic presupposition, interface library software is found out the out of order TCP connection that needs discharge from chained list, such as the oldest connection or the connection of minimum use, notice hardware discharges the out of order buffering area of this connection.
Claims (1)
1. software and hardware combining realizes a method for the out of order buffer management of TCP, it is characterized in that: comprise the following steps:
A, network interface card receive after the message of a TCP connection, and out of order if message has occurred, slave plate carries in internal memory and applies for being used for the message of this connection to sort in an out of order buffering area;
B, network interface card are in the time of the message connecting to this TCP of software transmission, and by a mark is set in the header of message, this connection of notice software has occurred out of order, has taken an out of order buffering area;
C, interface library are received after the message that out of order TCP connection occurs, this TCP are connected and is connected in series in an out of order TCP chained list, and the heap(ed) capacity of chained list is safeguarded;
D, in the time that out of order TCP capacity exceedes the threshold value of systemic presupposition, interface library software is found out the out of order TCP that needs discharge and is connected from chained list, notice hardware discharges the out of order buffering area of this connection;
When in described D step, software is searched the out of order buffering area that needs release, can be by the most always connecting, the methods such as minimum use connection are selected, and notice discharges the out of order buffering area of this connection.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010611748.7A CN102082688B (en) | 2010-12-17 | 2010-12-17 | Method for realizing management of TCP (transmission control protocol) out-of-order buffer by means of combination of software and hardware |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010611748.7A CN102082688B (en) | 2010-12-17 | 2010-12-17 | Method for realizing management of TCP (transmission control protocol) out-of-order buffer by means of combination of software and hardware |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102082688A CN102082688A (en) | 2011-06-01 |
CN102082688B true CN102082688B (en) | 2014-08-13 |
Family
ID=44088445
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201010611748.7A Active CN102082688B (en) | 2010-12-17 | 2010-12-17 | Method for realizing management of TCP (transmission control protocol) out-of-order buffer by means of combination of software and hardware |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102082688B (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114024924B (en) * | 2022-01-05 | 2022-04-12 | 北京安博通科技股份有限公司 | TCP stream recombination method and device, electronic equipment and storage medium |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1679282A (en) * | 2002-08-30 | 2005-10-05 | 美国博通公司 | System and method for TCP offload |
CN1985492A (en) * | 2004-06-17 | 2007-06-20 | 美国博通公司 | Method and system for supporting iSCSI read operations and iSCSI chimney |
CN101253745A (en) * | 2005-07-18 | 2008-08-27 | 博通以色列研发公司 | Method and system for transparent TCP offload |
CN101540720A (en) * | 2008-06-06 | 2009-09-23 | 曙光信息产业(北京)有限公司 | Zero-copy method for supporting link aggregation of multi-type network cards |
CN101841545A (en) * | 2010-05-14 | 2010-09-22 | 中国科学院计算技术研究所 | TCP stream restructuring and/or packetizing method and device |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7295555B2 (en) * | 2002-03-08 | 2007-11-13 | Broadcom Corporation | System and method for identifying upper layer protocol message boundaries |
-
2010
- 2010-12-17 CN CN201010611748.7A patent/CN102082688B/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1679282A (en) * | 2002-08-30 | 2005-10-05 | 美国博通公司 | System and method for TCP offload |
CN1985492A (en) * | 2004-06-17 | 2007-06-20 | 美国博通公司 | Method and system for supporting iSCSI read operations and iSCSI chimney |
CN101253745A (en) * | 2005-07-18 | 2008-08-27 | 博通以色列研发公司 | Method and system for transparent TCP offload |
CN101540720A (en) * | 2008-06-06 | 2009-09-23 | 曙光信息产业(北京)有限公司 | Zero-copy method for supporting link aggregation of multi-type network cards |
CN101841545A (en) * | 2010-05-14 | 2010-09-22 | 中国科学院计算技术研究所 | TCP stream restructuring and/or packetizing method and device |
Non-Patent Citations (1)
Title |
---|
杜英明.高速网络环境下基于零拷贝的报文捕获机制研究与实现.《中国优秀硕士学位论文全文数据库 信息科技辑(月刊)》.2009,第34页第1段,第4.3.1节,图4.4. * |
Also Published As
Publication number | Publication date |
---|---|
CN102082688A (en) | 2011-06-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20190026319A1 (en) | Adaptive monitoring and processing of new data files and changes to existing data files | |
US9348537B2 (en) | Ascertaining command completion in flash memories | |
CN101599986B (en) | Method for increasing transmission speed of files and computer system | |
US20190068501A1 (en) | Throttling for bandwidth imbalanced data transfers | |
US11914552B1 (en) | Facilitating existing item determinations | |
WO2019062572A1 (en) | Data processing method, device and system | |
CN102255964B (en) | Internet application software testing method and system | |
CN102082688B (en) | Method for realizing management of TCP (transmission control protocol) out-of-order buffer by means of combination of software and hardware | |
CN104199800A (en) | Method for eliminating mutual exclusion of table items in multi-core system | |
US20090106454A1 (en) | Independent synchronization of meta-data between devices | |
AU2013366156B2 (en) | Digital memory imaging system and method | |
WO2014117585A1 (en) | System and method for audio signal collection and processing | |
CN103442091B (en) | Data transmission method and device | |
CN117544507A (en) | Multi-region distributed configuration method and system based on cloud object storage service | |
US8639836B2 (en) | Smart nagling in a TCP connection | |
CN102750342A (en) | Method for maintaining data consistency for cluster file system | |
CN114722003A (en) | Centralized data acquisition method, device, equipment and storage medium | |
CN102075416B (en) | Method for realizing TCP (transmission control protocol) connection data buffer by combining software and hardware | |
CN101901273A (en) | Memory disk-based high-performance storage method and device | |
CN107615259A (en) | A kind of data processing method and system | |
CN110266526A (en) | A kind of loading method and equipment of device tree | |
WO2014019479A1 (en) | Method and device based on android system for tracking imported file | |
CN102111403B (en) | Method and device for acquiring transmission control protocol (TCP) connection data at high speed | |
US20240069801A1 (en) | Memory-side cache directory-based request queue | |
CN116089335A (en) | Bus conversion device, method and system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20220802 Address after: 100193 No. 36 Building, No. 8 Hospital, Wangxi Road, Haidian District, Beijing Patentee after: Dawning Information Industry (Beijing) Co.,Ltd. Patentee after: DAWNING INFORMATION INDUSTRY Co.,Ltd. Address before: 100084 Beijing Haidian District City Mill Street No. 64 Patentee before: Dawning Information Industry (Beijing) Co.,Ltd. |
|
TR01 | Transfer of patent right |