CN1248465C - Management method of data fransmission/receiving butter region in network communication - Google Patents

Management method of data fransmission/receiving butter region in network communication Download PDF

Info

Publication number
CN1248465C
CN1248465C CNB021474737A CN02147473A CN1248465C CN 1248465 C CN1248465 C CN 1248465C CN B021474737 A CNB021474737 A CN B021474737A CN 02147473 A CN02147473 A CN 02147473A CN 1248465 C CN1248465 C CN 1248465C
Authority
CN
China
Prior art keywords
buffering area
data
packet
sub
reception
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 - Fee Related
Application number
CNB021474737A
Other languages
Chinese (zh)
Other versions
CN1494277A (en
Inventor
崔烽
叶玲
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CNB021474737A priority Critical patent/CN1248465C/en
Publication of CN1494277A publication Critical patent/CN1494277A/en
Application granted granted Critical
Publication of CN1248465C publication Critical patent/CN1248465C/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

The present invention relates to a management method of a data transmitting/receiving butter region in network communication, which comprises the steps: firstly, a data transmitting/receiving butter region is divided into sub-buffer regions with different sizes; then, data which need to be buffered are carried out data buffering by determining the sub-buffer regions matched with the data according to the sizes of data packets. The present invention divides the data transmitting/receiving butter region on the basis of an SCTP into different types and carries out uniform distribution and management according to the lengths of the transmitted data and the size of a path MTU so as to enhance an utilization rate in the use process of the data transmitting/receiving butter region on the basis of the SCTP, and simultaneously, the processing speed of data reception and transmission can be effectively enhanced.

Description

The management method of data transmission/reception buffering area in the network service
Technical field
The present invention relates to network communications technology field, relate in particular to the management method of data transmission/reception buffering area in a kind of network service.
Background technology
Development along with the network communications technology, IP (Internet Protocol, Internet protocol) packet network technologies is progressively ripe, for realizing the intercommunication of legacy circuit-switched networks network and IP packet network, need transmit circuit switching signaling protocols such as No.7 signaling on IP network.Present SIGTRAN (Signaling Transport, signaling transmission) protocol suite can satisfy the demand of transmission legacy circuit-switched signaling protocol on IP network, and the structure of SIGTRAN stack is made up of three parts as shown in Figure 1; Wherein, SCTP (Stream Control Transmission Protocol, stream control transmission protocol) is used for guaranteeing reliable, the transmission in order of signaling message for being used for the general signaling transfer protocol of IP network; The adaptive sublayer of signaling is that the specific high-rise arrowband signaling of being carried is carried out adaptive level, is used for upwards providing the special interface of original arrowband signaling to make high-rise arrowband signaling to remain unchanged and is transmitted in the signaling transfer protocol stack pellucidly; IP is the standard I P agreement in TCP/IP (transmission control protocol/Internet protocol) collection.
SCTP can provide connection-oriented authentic data bag transmission, need not realize the data delimitative function in the upper strata, and have real-time good, safe, avoided the wardrobe obstruction, supported plurality of advantages such as multiaddress, with respect to TCP just be more suitable in real time, safety, signaling that reliability requirement is high transmits.
In existing network communication applications, cause for reducing the data transmit-receive process that internal memory is frequent to be distributed and discharge the fragment that causes, generally adopt the mode of static allocation to manage based on the data transmission/reception buffering area of SCTP.Yet, in use there is following problem in the transmission of static allocation/reception buffering area: at transmitting terminal, give and have real-time good, safe, avoided the wardrobe obstruction, supported plurality of advantages such as multiaddress, is random length with respect to TCP with regard to the upper layer data that is more suitable for real-time SCTP layer transmission, SCTP needs that these data are saved in fixed-size SCTP and sends in the buffering area, if buffering area is too big, User Data Length is hour waste internal memory; If buffering area is too little, when User Data Length was big, then data fragmentation was too many, reduced the data transmit-receive processing speed; At receiving terminal, it also is uncertain that SCTP receives data packet length, and SCTP need be saved in the fixed-size SCTP reception buffering area receiving packet equally, when data packet length is very little, the internal memory waste is serious, and when data length was big, then data fragmentation was too many.
Summary of the invention
The management method that the purpose of this invention is to provide data transmission/reception buffering area in a kind of network service with the utilance in the use of raising data transmission/reception buffering area, and improves the data transmit-receive processing speed effectively.
The object of the present invention is achieved like this: the management method of data transmission/reception buffering area in the network service comprises:
A, data transmission/reception buffering area is divided into the sub-buffering areas of different sizes, the size of described sub-buffering area should be less than transmission path MTU, data are sent buffering area be divided into D1, D2......Dn-1, Dn type sub-buffering area, and be followed successively by by its size: D1>D2>...>Dn-1>Dn; The Data Receiving buffering area is divided into D1, D2......Dm-1, Dm type sub-buffering area, and is followed successively by by its size: D1>D2>...>Dm-1>Dm;
B, carry out data in buffer for needs, the buffer memory that carries out data needs cached data packet when being packet to be sent, determine data packet length to be sent, and this packet of selection Dx buffering area buffer memory, and satisfy the size of Dx buffer size>sub-buffering area of this data packet length>Dx-1,1≤x≤n; When to need cached data packet be packet to be received, determine data packet length to be received, and select this packet of Dy buffering area buffer memory, and satisfy the size of Dy buffer size>sub-buffering area of this data packet length>Dy-1,1≤y≤m.
This method also comprises: described Dx out of buffers then uses the sub-buffering area of Dx+1, Dx+2......Dn during with buffer memory packet to be sent successively; When all sub-buffering areas all are not enough to buffer memory packet to be sent, then can be with the laggard row cache of packet burst, and reduce by the data of receiving terminal after with burst.
Described Dy out of buffers then uses the sub-buffering area of Dy+1, Dy+2......Dm during with buffer memory packet to be received successively.
When packet arrives but do not have suitable buffering area, abandon the packet of transmission sequence number maximum; Simultaneously, exceed the packet of IP packet length 1500 bytes, do discard processing for the length that receives.
If the packet that abandons is proved, also need to send Negative ACKnowledgement message.
Described data transmission/reception buffering area is the transmission/reception buffering area based on SCTP (stream control transmission protocol), and data are sent buffering area be divided into large, medium and small three types of sub-buffering areas, the Data Receiving buffering area is divided into overlength, large, medium and small four types of sub-buffering areas.
By technique scheme as can be seen, the present invention will be divided into dissimilar based on the data transmission/reception buffering area of SCTP by size, and distribute management unitedly according to transmission data length and path mtu size, thereby improve based on the utilance in the data transmission/reception buffering area use of SCTP, simultaneously, can improve the data transmit-receive processing speed effectively.
Description of drawings
Fig. 1 is a signaling transfer protocol protocol stack structure schematic diagram;
Fig. 2 is buffering area allocation flow figure when sending packet;
Fig. 3 is buffering area allocation flow figure when receiving packet.
Embodiment
Core concept of the present invention is that the SCTP buffering area is divided into dissimilar sub-buffering areas by size, and determines that according to the size of packet the buffering area that is complementary with it carries out the buffer memory of packet.
Implement the present invention, need that at first data are sent buffering area and be divided into D1, D2......Dn-1, Dn type sub-buffering area, and be followed successively by by its size: D1>D2>...>Dn-1>Dn, n are the integer more than or equal to 1; The Data Receiving buffering area is divided into D1, D2......Dm-1, Dm type sub-buffering area, and is followed successively by by its size: D1>D2>...>Dm-1>Dm, m are the integer more than or equal to 1.
When to need cached data packet be packet to be sent, need to determine data packet length to be sent, and select this packet of Dx buffering area buffer memory, and satisfy the size of Dx buffer size>sub-buffering area of this data packet length>Dx-1,1≤x≤n; When described Dx out of buffers during, then use the sub-buffering area of Dx+1, Dx+2......Dn successively with buffer memory packet to be sent; When all sub-buffering areas all are not enough to buffer memory packet to be sent, then can be with the laggard row cache of packet burst, and reduce by the data of receiving terminal after with burst;
When to need cached data packet be packet to be received, need determine data packet length to be received, and select this packet of Dy buffering area buffer memory, and satisfy the size of Dy buffer size>sub-buffering area of this data packet length>Dy-1,1≤y≤m; When described Dy out of buffers during, then use the sub-buffering area of Dy+1, Dy+2......Dm successively with buffer memory packet to be received.
For example, can be divided into large, medium and small three types sub-buffering area for SCTP data transmission/reception buffering area; And SCTP receives the sub-buffering area that buffering area can also be assigned the overlength type, with the convenient buffer memory that receives packet;
With the maximum data packet length is that the Ethernet of 1500 bytes is an example, SCTP can be sent the sub-buffering area that buffering area is divided into three types of 100 bytes, 200 bytes and 500 bytes, and big sub-buffer size is just less than the path mtu value, promptly less than 500 bytes; SCTP is received the sub-buffering area that buffering area is divided into four types of 100 bytes, 200 bytes, 500 bytes and 1500 bytes, wherein the sub-buffering area of 1500 bytes is that 2-3 gets final product, and the setting of this sub-buffering area is to consider the data that may need to receive a small amount of 500 bytes<reception data length≤1500 bytes;
Each sub-buffer size and number can be determined according to the network communicating system needs.
After will sending/receive buffering area and being divided into the experimental process buffering area, just can be according to transmission/reception data packet length, and send data packet transmission path mtu size and distribute and use each sub-buffering area, this process further comprises:
When sending packet, distribute corresponding sub-buffering area according to sending data packet length and path mtu size, concrete allocative decision comprises as shown in Figure 2:
Step 1: determine length of data package to be sent;
Step 2: judge length of data package to be sent, whether be less than or equal to the size of boy's buffering area, if then execution in step 3, otherwise, execution in step 4;
Step 3: preferentially use boy's buffering area, if boy's out of buffers during with data cached bag to be sent, then can use neutron buffering area and big sub-buffering area successively;
That is: when sending data packet length≤100 bytes, use the sub-buffering area of transmission of 100 bytes to preserve and send packet; If the sub-buffering area of transmission of 100 bytes can't satisfy use, then can use the sub-buffering area of transmission of 200 bytes to substitute; If the sub-buffering area of transmission of 200 bytes is not enough, then can use the sub-buffering area of transmission of 500 bytes to substitute; If SCTP sends sub-buffering area for three kinds and used inadequately, distribute to send sub-buffering area failure;
Step 4: judge whether length of data package to be sent is less than or equal to the neutron buffer size, if then execution in step 5, otherwise, execution in step 6;
Step 5: preferentially use the neutron buffering area, if the neutron out of buffers during with data cached bag to be sent, then can use big sub-buffering area;
If when big sub-buffering area also was not enough to data cached bag to be sent, the burst function of then using SCTP used boy's buffering area data cached packet burst to be sent then;
That is: when 100 bytes<transmission data packet length≤200 bytes, during and path mtu 〉=200 bytes, then use the sub-buffering area of transmission of 200 bytes to preserve and send packet; If the sub-buffering area of transmission of 200 bytes can't satisfy use, then can use the sub-buffering area of transmission of 500 bytes to substitute; If the sub-buffering area of transmission of 500 bytes is not enough,, and use the sub-buffering area of transmission of 100 bytes to substitute then with the packet burst; If SCTP sends sub-buffering area for three kinds and used inadequately, distribute to send sub-buffering area failure;
Step 6: preferentially use big sub-buffering area, if big sub-out of buffers during with data cached bag to be sent, the burst function of then using SCTP is packet burst to be sent, in using then, boy's buffering area;
That is: when sending data packet length>200 bytes, during and path mtu 〉=500 bytes, use the sub-buffering area of transmission of 500 bytes to preserve and send packet; If the sub-buffering area of transmission of 500 bytes can't satisfy use,, and use the sub-buffering area of transmission of 200 bytes and 100 bytes to substitute then with the packet burst; If SCTP sends sub-buffering area for three kinds and used inadequately, distribute to send sub-buffering area failure.
In addition, for the bigger transmission packet of length, then need to use the burst function of SCTP with its burst; For example, sending data length is 1500 bytes, then needs packet is split as 3 500 byte data bags; If the sub-buffering area of 500 bytes distributes, also removable is the packet of 7 200 bytes and 1 100 byte; SCTP message burst is received in the opposite end, can utilize SCTP group packet function with the packet segment reduction that receives.
When receiving packet, determine corresponding sub-buffering area according to data packet length, concrete allocative decision comprises as shown in Figure 3:
Step 11: the data packet length of determining reception;
Step 12: judge whether the data packet length that receives is less than or equal to boy's buffer size, if then execution in step 13, otherwise, execution in step 14:
Step 13: preferentially use boy's buffering area, if boy's buffering area can't satisfy use, in then can using successively, big sub-buffering area;
That is: when receiving data packet length≤100 bytes, use the sub-buffering area of reception of 100 bytes to preserve this reception data;
Step 14: judge whether the data packet length that receives is less than or equal to the neutron buffer size, if then execution in step 15, otherwise, execution in step 16;
Step 15: preferentially use the neutron buffering area,, then can use big sub-buffering area if the neutron buffering area can't satisfy use;
That is: when 100 bytes<reception data length≤200 bytes, use the sub-buffering area of reception of 200 bytes to preserve this reception data;
Step 16: judge whether the data packet length that receives is less than or equal to big sub-buffer size, if then execution in step 17, otherwise, execution in step 18;
Step 17: preferentially use big sub-buffering area;
That is: when 200 bytes<reception data length≤500 bytes, use the sub-buffering area of reception of 500 bytes to preserve this reception data;
Step 18: judge whether the data packet length that receives is less than or equal to the sub-buffer size of overlength, if then execution in step 19, otherwise, execution in step 21;
Step 19: judge whether the sub-buffering area of all overlength can satisfy buffer memory and receive the data use, if can, then execution in step 20, otherwise, execution in step 22;
Step 20: use the sub-buffering area of overlength to carry out metadata cache;
That is: when the data of 500 bytes<reception data length≤1500 bytes, use the reception buffering area of 1500 bytes to preserve this reception data;
Step 21: abandon this packet, promptly surpass the reception data of 1500 bytes, make discard processing for length;
Step 22: abandon the maximum packet of TSN (transmission sequence number), promptly when packet arrives but do not have suitable buffering area to come this packet of buffer memory, packet is made discard processing.
And because SCTP allows burst ground to confirm, the TSN that the transmission sequence number of the packet that receives is not necessarily maximum in order to reduce the number of burst confirmation as far as possible, and abandons the packet of transmission sequence number maximum.
If the packet that abandons is proved, also need to send Negative ACKnowledgement message.SCTP has the message of the confirmation of being exclusively used in, the same SACK that cries with TCP (transmission control protocol), this message is that Data Receiving direction transmit leg is notified its data that received, and each data block of SCTP all has a TSN, and SACK sends confirmation by this sequence number to transmit leg.Negative ACKnowledgement is that below situation occurs: the data of sending as the other side correctly receive and sent the SACK confirmation to the opposite end, must abandon these data when under the full situation of reception buffering area occurring, having data to arrive again, must be again after abandoning send SACK, show that this data block need retransmit to the opposite end.

Claims (6)

1, the management method of data transmission/reception buffering area in a kind of network service is characterized in that comprising:
A, data transmission/reception buffering area is divided into the sub-buffering areas of different sizes, the size of described sub-buffering area should be less than transmission path MTU, data are sent buffering area be divided into D1, D2......Dn-1, Dn type sub-buffering area, and be followed successively by by its size: D1>D2>...>Dn-1>Dn; The Data Receiving buffering area is divided into D1, D2......Dm-1, Dm type sub-buffering area, and is followed successively by by its size: D1>D2>...>Dm-1>Dm;
B, carry out data in buffer for needs, carry out the buffer memory of data, when to need cached data packet be packet to be sent, determine data packet length to be sent, and this packet of selection Dx buffering area buffer memory, and satisfy the size of Dx buffer size>sub-buffering area of this data packet length>Dx-1,1≤x≤n; When to need cached data packet be packet to be received, determine data packet length to be received, and select this packet of Dy buffering area buffer memory, and satisfy the size of Dy buffer size>sub-buffering area of this data packet length>Dy-1,1≤y≤m.
2, the management method of data transmission/reception buffering area in the network service according to claim 1, it is characterized in that this method also comprises: described Dx out of buffers then uses the sub-buffering area of Dx+1, Dx+2......Dn during with buffer memory packet to be sent successively; When all sub-buffering areas all are not enough to buffer memory packet to be sent, then can be with the laggard row cache of packet burst, and reduce by the data of receiving terminal after with burst.
3, the management method of data transmission/reception buffering area in the network service according to claim 1 is characterized in that: described Dy out of buffers then uses the sub-buffering area of Dy+1, Dy+2......Dm during with buffer memory packet to be received successively.
4, the management method of data transmission/reception buffering area in the network service according to claim 3 is characterized in that: when packet arrives but do not have suitable buffering area, abandon the packet of transmission sequence number maximum; Simultaneously, exceed the packet of IP packet length 1500 bytes, do discard processing for the length that receives.
5, the management method of data transmission/reception buffering area in the network service according to claim 4 is characterized in that: if the packet that abandons is proved, also need to send Negative ACKnowledgement message.
6, the management method of data transmission/reception buffering area in the network service according to claim 1, it is characterized in that described data transmission/reception buffering area is the transmission/reception buffering area based on SCTP, and data are sent buffering area be divided into large, medium and small three types of sub-buffering areas, the Data Receiving buffering area is divided into overlength, large, medium and small four types of sub-buffering areas.
CNB021474737A 2002-11-01 2002-11-01 Management method of data fransmission/receiving butter region in network communication Expired - Fee Related CN1248465C (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB021474737A CN1248465C (en) 2002-11-01 2002-11-01 Management method of data fransmission/receiving butter region in network communication

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB021474737A CN1248465C (en) 2002-11-01 2002-11-01 Management method of data fransmission/receiving butter region in network communication

Publications (2)

Publication Number Publication Date
CN1494277A CN1494277A (en) 2004-05-05
CN1248465C true CN1248465C (en) 2006-03-29

Family

ID=34232992

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB021474737A Expired - Fee Related CN1248465C (en) 2002-11-01 2002-11-01 Management method of data fransmission/receiving butter region in network communication

Country Status (1)

Country Link
CN (1) CN1248465C (en)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1756261B (en) * 2004-09-29 2010-04-28 华为技术有限公司 Buffer area managing method based on SCTP end-point
EP1952602B1 (en) * 2005-11-02 2012-07-18 Lg Electronics Inc. Method and apparatus for overhead reduction of signaling messages
WO2007065296A1 (en) * 2005-12-07 2007-06-14 Zte Corporation Method for managing the sctp output stream queue and implementing date transmission
CN101262437B (en) * 2008-04-17 2011-07-13 中兴通讯股份有限公司 A method for state migration of stream control transmission protocol
CN102566515B (en) * 2010-12-09 2013-07-24 沈阳高精数控技术有限公司 Data Interoperation method used for bus-based numerical control system
EP2755129B8 (en) * 2011-09-09 2017-02-22 International Business Machines Corporation Memory allocation method, program, and system
CN103699497B (en) * 2013-12-19 2017-01-04 京信通信系统(中国)有限公司 A kind of cache allocation method and device
CN106909460B (en) * 2017-01-24 2018-06-05 广东德诚科教有限公司 Data buffering method, device and storage medium
CN106921751A (en) * 2017-04-07 2017-07-04 广东浪潮大数据研究有限公司 A kind of communication means and device being reliably connected
CN107547454A (en) * 2017-09-07 2018-01-05 郑州云海信息技术有限公司 Message method for dividing and processing in network control chip based on particular communication protocol
CN108184133B (en) * 2017-12-07 2020-09-25 西安万像电子科技有限公司 Network display card and image data transmission method
CN114124850B (en) * 2022-01-26 2022-07-12 浙江宇视系统技术有限公司 Network communication method and device and storage medium
TWI813262B (en) * 2022-04-20 2023-08-21 瑞昱半導體股份有限公司 Communications device and method for receiving aggregate packet

Also Published As

Publication number Publication date
CN1494277A (en) 2004-05-05

Similar Documents

Publication Publication Date Title
CN1191725C (en) Method for making data transmission more effective and a data transmission protocol
CN1248465C (en) Management method of data fransmission/receiving butter region in network communication
CN1290286C (en) Automatic repeat request protocol
CN1227854C (en) Link Layer acknowledgement and retransmission for cellular telecommunications
CN1339878A (en) Data transmitter and data transmitting method
CN1906906A (en) Optimized radio bearer configuration for voice over IP
CN1387715A (en) Method and apparatus for data transportation and synchronization between MAC and physical layers in wireless communication system
CN101030842A (en) Method and apparatus for rearranging data in mobile telecommunication system
AU2007344308A1 (en) Method of real-time transmission/reception of data in packets between a server and a client terminal, corresponding server and terminal
CN1452830A (en) Data transmission protocol
CN1633796A (en) Modifications to TCP/IP for broadcast or wireless networks
CN1193543C (en) Method for processing jam state of user part of news transmission part
CN1152313C (en) Section-by-section congestion control method based on random early detection
CN1589548A (en) An interface and related methods for implementing dynamic channelization in an Ethernet architecture
CN1812368A (en) Method for transmitting message data by IP facsimile gateway
CN1691590A (en) Method for sending window size adjustment information by receiving end in wireless link data transmission
CN1571418A (en) A method and system for implementing data transmission in flow control transmission protocol
CN1617525A (en) Method for guaranteeing general route package channel transmission reliability
CN1881932A (en) SPI4II interface remote transmission realizing method and apparatus
CN102263618A (en) Method, device and system for controlling wireless network congestion
CN1499751A (en) Data transmitting device and method for transmitting and receiving data and data communication system
CN1219370C (en) Communication method for performing all-tier protocol stack processing by base station side
CN101030841A (en) Method and apparatus for notifying protocol unit length variation
CN1270581C (en) Data unit handling device and method of controlling data unit handling device
CN1689277A (en) Mobile terminal and radio access point in radio access 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
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20060329

Termination date: 20121101