CN102195941A - Improved method and device for realizing transmission control protocol (TCP) proxy - Google Patents

Improved method and device for realizing transmission control protocol (TCP) proxy Download PDF

Info

Publication number
CN102195941A
CN102195941A CN201010122926XA CN201010122926A CN102195941A CN 102195941 A CN102195941 A CN 102195941A CN 201010122926X A CN201010122926X A CN 201010122926XA CN 201010122926 A CN201010122926 A CN 201010122926A CN 102195941 A CN102195941 A CN 102195941A
Authority
CN
China
Prior art keywords
ack
division
threshold
threshold value
tcp
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.)
Granted
Application number
CN201010122926XA
Other languages
Chinese (zh)
Other versions
CN102195941B (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.)
TD Tech Ltd
Original Assignee
TD Tech 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 TD Tech Ltd filed Critical TD Tech Ltd
Priority to CN201010122926.XA priority Critical patent/CN102195941B/en
Publication of CN102195941A publication Critical patent/CN102195941A/en
Application granted granted Critical
Publication of CN102195941B publication Critical patent/CN102195941B/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

The invention discloses an improved method for realizing a transmission control protocol (TCP) proxy. The method comprises the following steps of: A, receiving and caching a TCP/IP (Transmission Control Protocol/Internet Protocol) packet from a core network by using a radio network controller (RNC); B, resolving the cached TCP/IP packet and extracting a TCP layer data packet by using the RNC; C, judging whether the TCP layer data packet is an ACK (Acknowledge) packet or an ACK-carrying data packet by using the RNC, if so, performing a step D, and otherwise, directly forwarding the TCP layer data packet on a null interface and returning to the step A; and D, dynamically determining the quantity of split ACKs according to a buffered data size and/or the monitored null interface throughput, copying the ACK packet or the ACK-carrying data packet into a plurality of packets according to the quantity of the determined split ACKs, forwarding the ACK packet or the ACK-carrying data packet on the null interface and returning to the step A. The invention further discloses an improved device for realizing the TCP proxy. According to the scheme disclosed by the invention, the quantity of the split ACKs can be adjusted dynamically and adapts to a scene or service characteristic.

Description

A kind of improved transmission control protocol proxy implementation method and device
Technical field
The present invention relates to the Internet and communication technical field, particularly a kind of improved transmission control protocol (TCP) is acted on behalf of implementation method and device.
Background technology
When existing TCP technology is applied to the cable network transmission,, can reach the quick re-transmission and the congested controlled target of TCP mechanism expectation because the loopback delay characteristic of cable network is more stable.But, when combining,, have a strong impact on the efficiency of transmission of TCP in the wireless communications environment because the multiple influence of eat dishes without rice or wine transmission quality, wireless network resource control algolithm makes that TCP takes place more to start slowly and congested control with radio communication.Therefore,, make full use of wireless transmission resources, proposed so-called TCP agent skill group in order to optimize the TCP efficiency of transmission.
The TCP agent skill group promptly is to increase a TCP proxy module in radio network controller (RNC), is used to simulate the part transfer function of TCP, and to improve slow toggle speed and retransmission efficiency, TCP counts transfer performance in the lifting wireless network thereby reach.
Existing TCP agency's realization flow comprises the steps: as shown in Figure 1
Step 101: the packet that core net (CN) transmits arrives radio network controller (RNC) by TCP/IP group bag back.
Step 102:RNC is receiving these packets, with its standard packet format according to the ICP/IP protocol definition, packet is resolved, and extracts TCP layer data bag.
Step 103:RNC judges that whether described TCP layer data bag is ACK bag or the packet that carries ACK, if then execution in step 104, otherwise normally transmits this TCP layer data bag and withdraws from this flow process.
Step 104:RNC is according to pre-configured preset parameter, divides described ACK bag or carries the packet of ACK, and the packet that is about to described ACK bag or carries ACK copies as a plurality of, and then transmits described ACK bag or carry the packet of ACK.
For example, described preset parameter is N, and the packet that described ACK is wrapped or carries ACK copies as N+1.
By the ACK cladding is made as a plurality of the forwarding, can quicken to start slowly and congestion avoidance procedure in the TCP number of plies biography process, reach effects such as alleviating packet loss, reduction propagation delay time.
Divide determining of number for ACK in the mobile communication system, generally adopt the method for preset parameter configuration at present, i.e. the number of definition permission ACK division is not distinguished fixing value of any scene or uniform service configuration.Because characteristic and this parameter configuration of TCP agent functionality are closely related, the mode of fixed configurations is unfavorable for adapting to different application scenarioss.For example Hypersegmentation may occur, cause the too fast traffic carrying capacity that makes of high-rise window expansion much larger than the throughput of eating dishes without rice or wine; Or the division number deficiency, do not reach the purpose of expedited data transmission.
Summary of the invention
In view of this, the objective of the invention is to, propose a kind of improved transmission control protocol (TCP) and act on behalf of implementation method and device, can dynamically adjust the number of ACK bag division, itself and scene or traffic performance are adapted.
A kind of improved transmission control protocol TCP that the embodiment of the invention proposes acts on behalf of implementation method, comprises the steps:
A, radio network controller (RNC) receive and buffer memory wraps from the TCP/IP group of core net;
B, RNC resolve the TCP/IP group bag of institute's buffer memory, extract TCP layer data bag;
C, RNC judge that whether described TCP layer data bag is ACK bag or the packet that carries ACK, if, execution in step D then; Otherwise directly on eating dishes without rice or wine, transmit this TCP layer data bag and return steps A; And
D, according to the data in buffer amount and/or the throughput of eating dishes without rice or wine that monitors, dynamically determine the number of division ACK, and copy as described ACK bag or the packet that carries ACK a plurality of according to the number of determined division ACK, on eating dishes without rice or wine, transmit the packet that described ACK wrapped or carried ACK, and return steps A.
Preferably, the pre-configured first threshold and second threshold value, wherein second threshold value>first threshold in RNC;
Described basis is the data in buffer amount and/or the throughput of eating dishes without rice or wine that monitors, determines that dynamically the number of division ACK comprises:
The monitoring service source message transmission rate and the message transmission rate of eating dishes without rice or wine;
The ratio k of the computing service source data transmission rate and the message transmission rate of eating dishes without rice or wine;
Described ratio k and the described threshold value that sets in advance are compared, and less than first threshold, the number that then divides ACK is set to equal predefined fixed splitting number N=N as if ratio k 0If ratio k is greater than second threshold value, the number N that then will divide ACK makes zero; If ratio k between the first threshold and second threshold value, is then adjusted the number N of division ACK.
Preferably, described first threshold is greater than 0 and less than 1; Described second threshold value is greater than 0 and be less than or equal to 1.
Preferably, if described ratio k is between the first threshold and second threshold value, and the number of then adjusting division ACK is: compare with previous k value, as if step delta of the every increase of k, the number N that then will divide ACK reduces a granularity n, and N=N-n promptly is set; If k whenever reduces a step delta, the number N that then will divide ACK increases a granularity n, and N=N+n promptly is set, and wherein, Δ is the change step of k, and n is the granularity of division number N, and value is more than or equal to 1 and smaller or equal to N 0Integer, the configuration of Δ and n needs to guarantee N 0 n > = ( Thresh 2 - Thresh 1 ) / Δ , Thresh 1And Thresh 2Represent the first threshold and second threshold value respectively.
Preferably, I threshold interval is set between the first threshold and second threshold value, corresponding each threshold interval is provided with corresponding division and adjusts granularity [n 0, n 1..., n 1, n I+1..., n I-1]; I is the integer more than or equal to 1;
The described number N that will divide ACK increases a granularity n and is: judge the present threshold interval of ratio k, determine that granularity is adjusted in the division of this threshold interval correspondence, granularity is adjusted in determined division of number N increase of division ACK.
A kind of improved transmission control protocol TCP that the embodiment of the invention proposes acts on behalf of implement device, comprising:
Receive and cache module, being used to receive also, buffer memory wraps from the TCP/IP group of core net;
Parsing module is used for the TCP/IP group bag of reception and cache module institute buffer memory is resolved, and extracts TCP layer data bag;
Judge module is used to judge whether the TCP layer data bag that described parsing module extracts is ACK bag or the packet that carries ACK, if the packet that then described ACK is wrapped or carries ACK is sent to the division module; Otherwise this TCP layer data bag is sent to the sending module of eating dishes without rice or wine;
The division module, according to the data in buffer amount and/or the throughput of eating dishes without rice or wine that monitors, dynamically determine the number of division ACK, and according to the number of determined division ACK described ACK bag or the packet that carries ACK are copied as a plurality ofly, ACK bag that is duplicated or the packet that carries ACK are sent to the sending module of eating dishes without rice or wine;
The sending module of eating dishes without rice or wine is transmitted on eating dishes without rice or wine from the TCP layer data bag of described judge module or from the ACK bag of division module or carry the packet of ACK.
Described division module comprises:
The threshold value dispensing unit is used to preserve the pre-configured first threshold and second threshold value, wherein second threshold value>first threshold;
Monitoring means is used to monitor the service source message transmission rate and eats dishes without rice or wine message transmission rate, and the ratio k of the computing service source data transmission rate and the message transmission rate of eating dishes without rice or wine;
Comparing unit is used for ratio k that described monitoring means is calculated and the threshold value that described threshold value dispensing unit sets in advance and compares, and exports comparative result;
Adjustment unit, if the comparative result of described comparing unit output be ratio k less than first threshold, the number N that then divides ACK is set to equal predefined fixed splitting number; If described comparative result be ratio k greater than second threshold value, the number N that then will divide ACK makes zero; If described comparative result be ratio k between the first threshold and second threshold value, then adjust the number N of division ACK.
The division processing unit is used for the number N according to the division ACK of described adjustment unit output, and the packet that described ACK is wrapped or carries ACK copies as N+1.
Preferably, described threshold value dispensing unit further is provided with I threshold interval between the first threshold and second threshold value, and corresponding each threshold interval is provided with corresponding division and adjusts granularity [n 0, n 1..., n i, n I+1..., n I-1]; I is the integer more than or equal to 1;
Described comparing unit is a ratio k between the first threshold and second threshold value time obtaining comparative result, determines that further granularity is adjusted in the division of the present threshold interval correspondence of ratio k, and should divide the adjustment granularity and notify adjustment unit;
It is unit that described adjustment unit is used for adjusting granularity with described division, adjusts the number N of division ACK.
As can be seen from the above technical solutions, RNC is according to the data in buffer amount and/or the throughput of eating dishes without rice or wine that monitors, dynamically determine the number of division ACK, tcp window rate of expansion and practical business are adapted, avoid the excessive or not enough situation of ACK bag division to occur.
Description of drawings
Fig. 1 is TCP agency's of the prior art realization flow figure;
The realization flow figure that a kind of TCP that Fig. 2 proposes for the embodiment of the invention acts on behalf of;
The dynamic adjustment ACK bag that Fig. 3 proposes for the embodiment of the invention divides a kind of process chart of number.
Embodiment
The scheme that division ACK wraps in the TCP agency that the present invention proposes mainly is application scenarios or the traffic performance according to reality, dynamically adjusts the division number of ACK bag, thereby reaches the purpose that adapts to bottom transmission characteristic, control service source speed.
For making the purpose, technical solutions and advantages of the present invention clearer, the present invention is further elaborated below in conjunction with accompanying drawing.
Fig. 2 shows a kind of TCP agency's of embodiment of the invention proposition realization flow, comprises the steps:
The packet that step 201:CN transmits arrives RNC by TCP/IP group bag back.
Step 202:RNC receives and the described packet of buffer memory.
Step 203:RNC resolves described cached data packet according to the standard packet format of ICP/IP protocol definition, extracts TCP layer data bag.
Step 204:RNC judges that whether described TCP layer data bag is ACK bag or the packet that carries ACK, if then execution in step 205, otherwise normally transmits this TCP layer data bag and withdraws from this flow process.
Step 205:RNC dynamically determines the number of division ACK according to the data in buffer amount and/or the throughput of eating dishes without rice or wine that monitors.
Step 206:RNC is according to determined ACK number, divides described ACK bag or carries the packet of ACK, and the packet that is about to described ACK bag or carries ACK copies as a plurality of, and then transmits described ACK bag or carry the packet of ACK.
In the above flow process, step 205 is the present invention program's a core link.Below this step is described in detail: monitoring business source speed and the relation between the transmission rate of eating dishes without rice or wine, following steps 205a to 205c is described; Determine the number of ACK division again according to the situation of reality, following steps 205d is described.
Step 205a: monitoring service source message transmission rate
For the data distributing state in clear and definite high-level business source, need the data distributing speed of periodic monitor service source:
Rate IU=TrafficVolume IU/T MonitorPeriod (1)
Wherein: Rate IUBe illustrated in the high-level business source speed that the RNC side monitors, TrafficVolume IUThe high-level business amount that expression RNC side measures, this value can realize by the rlc layer measuring business volume; T MonitorPeriodExpression service source speed monitoring periods, this parameter is a configurable parameter.
Step 205b: monitor the message transmission rate of eating dishes without rice or wine.
Rate UU=Thrpt UU(formula 2)
Wherein, Rate UURepresent to eat dishes without rice or wine message transmission rate, Thrpt UURepresent to eat dishes without rice or wine throughput, can report that its report cycle is configurable by the physical (L1) measurement; Perhaps, can obtain by L2 calculating.
Step 205c: the ratio k of the computing service source data transmission rate and the message transmission rate of eating dishes without rice or wine:
k=Rate IU/Rate UU (3)
Wherein: k is a service source speed and the ratio of the transmission rate of eating dishes without rice or wine, and calculates by formula (3); In the ideal case, expectation service source speed is consistent (k is tending towards 1) with the speed of eating dishes without rice or wine, and can guarantee like this can obtain effective transmission behind the service source data distributing.
Step 205d: division ACK mechanism is adjusted.Specifically can be divided into following a few sub-steps again:
Substep a: during initial start, the number of division ACK bag is predefined preset parameter N 0
In general, during professional the initiation, TCP at first enters slow the startup stage, in this stage, the available transmission rate of eating dishes without rice or wine can be higher than the data rate that service source issues, and ratio k is less than 1, at this moment expectation starts division ACK mechanism, quickens to start slowly to carry out, and makes TCP send window rapid expanding.
Therefore, start division ACK mechanism when business is set up, definition ACK division number is N, and the ACK division number that initial setting up is set is N=N 0
Wherein, N 0Be configurable parameter.
Substep b: dynamically adjust ACK division number N according to the value of k.
During initial start along with the quick expansion of TCP send window, k (the k value is calculated and seen formula (3)) value increases gradually since 0, when k approaches 1, illustrate that service source speed and the transmittability of eating dishes without rice or wine to provide are consistent substantially, carry out the effect that the ACK division has not had the transmission of promoting business if continue with bigger division number this moment, may cause high level data at the long-time buffer memory of L2 on the contrary, increase the weight of the buffer memory burden of L2.Therefore, the increase along with the k value can correspondingly reduce ACK division number N.
When the quality of eating dishes without rice or wine changes, or when having a plurality of new users to insert suddenly, cause the transmittability of eating dishes without rice or wine to reduce.In this case, the throughput of eating dishes without rice or wine will be less than service source speed (k>1), and the variation that this moment, the TCP layer was eated dishes without rice or wine for adaptation with reducing the data volume that issues gradually, until reaching stable state (k is tending towards 1) again, at this moment is to transmit with relatively little speed.
When the quality recovery of eating dishes without rice or wine, or there is the user to discharge, when the transmittability of eating dishes without rice or wine increases,, at this moment needs TCP to accelerate the transmission of service source data because service source speed in time promotes the phenomenon that k<1 occurs.Simultaneously, along with the increase of k value, expectation keeps the consistent of data source and the transmittability of eating dishes without rice or wine gradually, correspondingly also needs to reduce ACK and divides number N.
Pre-configured plural threshold value in RNC, wherein Zui Da threshold value is for stopping the division threshold value, and minimum threshold value is initial division threshold value.Described ratio k and described threshold value are compared, if ratio k is less than initial division threshold value, then according to the fixed splitting number division ACK bag of setting; If ratio k then divides number and makes zero greater than stopping the division threshold value, stop the division of ACK bag; If ratio k between these two threshold values, is then dynamically adjusted the division number.Described initial division threshold value is greater than 0 and less than 1; Described termination division threshold value is greater than 0 and be less than or equal to 1.
The dynamic adjustment ACK bag that Fig. 3 proposes for the embodiment of the invention divides a kind of handling process of number, and first threshold Thresh is set 1(initial division threshold value), the second threshold value Thresh 2(stopping the division threshold value), the wherein second threshold value Thresh 2>first threshold Thresh 1, the span of first threshold greater than 0 and L less than the span of 1, the second threshold value greater than 0 and be less than or equal to 1, this flow process comprises the steps:
Step 301: initial start up phase, because service source speed is 0, k=0 then, ACK bag division number N is set to predefined initial value N 0
Step 302:, monitor ratio k again every scheduled duration.
Step 303: judge that whether ratio k is more than or equal to the first threshold Thresh that sets in advance 1, if k<Thresh 1, then N is set to equal initial value N=N 0, and go to execution in step 302; If k is more than or equal to first threshold Thresh 1, then execution in step 304.
Step 304: judge that whether ratio k is more than or equal to the second threshold value Thresh 2If,, N=0 then is set, stop the division of ACK bag, and return step 302; Otherwise, execution in step 305.
Step 305: when the value of k satisfies Thresh 1<=k<Thresh 2The time, if step delta of the every increase of k then reduces N a granularity n, N=N-n is set promptly; If k whenever reduces a step delta, then N is increased a granularity n, N=N+n promptly is set, and returns step 302.
Certainly, if k increases a step-length, then N reduces a granularity; If k reduces (or increase) m step-length, the then also corresponding increase of N (or reducing m granularity).Wherein, Δ is the change step of k, and the configuration of Δ and n needs to guarantee N 0 n > = ( Thresh 2 - Thresh 1 ) / Δ ; N is the granularity of division number N, and value is more than or equal to 1 and smaller or equal to N 0Integer.
Further, between initial division threshold value and termination division threshold value, at least one threshold value can also be set, for example, between initial division threshold value and termination division threshold value I threshold interval is set, corresponding each threshold interval is provided with corresponding division and adjusts granularity [n 0, n 1..., n i, n I+1..., n I-1]; I is the integer more than or equal to 1.Judge the present threshold interval of ratio k, determine that granularity is adjusted in the division of this threshold interval correspondence, granularity is adjusted in determined division of number N minimizing of division ACK.For example, be in Thresh as k iWith Thresh I+1Between the time, granularity of its division decreased number is taken as the division of this threshold interval correspondence and adjusts granularity n i
As can be seen from the above embodiments, the initial period, k was less, disposed a bigger N 0If k reduces, service source speed be described in increase, level off to the speed of eating dishes without rice or wine gradually, when convergence 1 is consistent, there is no need excessively to strengthen service source speed, division at this moment just can reduce, the division of the big more needs of k just is just few more, and the division of the more little needs of k is just many more.So, just should be step-length of the every increase of k, N just reduces by a granularity N=N-n; Otherwise, if k reduces granularity of then corresponding increase.
It in embodiment illustrated in fig. 3 the number of adjusting division ACK according to service source speed and the relation between the transmission rate of eating dishes without rice or wine.The actual number that also can adjust division ACK according to the number of the tcp data bag of buffer memory.For example, if the tcp data bag of RNC buffer memory is more, show that needs accelerate the transmission of eating dishes without rice or wine, can slow down for avoiding RNC to change into stopping up service source speed this moment, and then the number of ACK is divided in minimizing; If the tcp data bag of buffer memory is less, the number that then can suitably increase division ACK is with suitable raising service source speed.Certainly, service source speed and relation and this two aspects combined factors of tcp data bag number of buffer memory between the transmission rate of eating dishes without rice or wine can be adjusted the number of division ACK jointly.
For example: define under the configurable traffic volume threshold thresholding and be limited to TrafficVolume LOWER, on be limited to TrafficVolume UPPER, TrafficVolume wherein UPPER>TrafficVolume LOWERThe traffic carrying capacity of buffer memory is TrafficVolume IUM is the ACK division number based on traffic carrying capacity.
A) work as TrafficVolume IU<TrafficVolume LOWER, then M is provided with initial value M=M 0
B) if TrafficVolume LOWER<=TrafficVolume IU<TrafficVolume UPPER, work as TrafficVolume IUEvery increase Δ TrafficVolume, then M=M-m; Work as TrafficVolume IUWhenever reduce Δ TrafficVolume, then M=M+m
C) until TrafficVolume IU>=TrafficVolume UPPER, M=0 then is set, stop splitting function.
Δ TrafficVolume is the variable quantity of traffic carrying capacity, needs to guarantee M 0>=(TrafficVolume UPPER-TrafficVolume LOWER)/Δ TrafficVolume;
The granularity that m adjusts for the division number, span greater than 1 less than M 0Integer;
Identical with method based on speed, can design multistage threshold value according to actual needs, according to the grade that threshold value is divided, design the adjustment granularity that traffic carrying capacity in each grade changes granularity and corresponding A CK number.
Support this traffic carrying capacity method and speed method to use jointly in the practical application: to allow to dispose respectively simultaneously to come into force, promptly adjust the ACK number according to principle separately.Also allow to dispose jointly simultaneously and come into force, traffic carrying capacity changes and rate variation as satisfying simultaneously, just adjusts the ACK number, when adjusting the ACK number, can both get little get big or get with, even adopt other account forms.Here do not limit in the practical application, the compound mode to several different methods adopts is determined by practical application request.
The embodiment of the invention also proposes a kind of TCP and acts on behalf of implement device, and this device is arranged in RNC, comprising:
Receive and cache module, being used to receive also, buffer memory wraps from the TCP/IP group of core net;
Parsing module is used for the TCP/IP group bag of reception and cache module institute buffer memory is resolved, and extracts TCP layer data bag;
Judge module is used to judge whether the TCP layer data bag that described parsing module extracts is ACK bag or the packet that carries ACK, if the packet that then described ACK is wrapped or carries ACK is sent to the division module; Otherwise this TCP layer data bag is sent to the sending module of eating dishes without rice or wine;
The division module, according to the data in buffer amount and/or the throughput of eating dishes without rice or wine that monitors, dynamically determine the number of division ACK, and according to the number of determined division ACK described ACK bag or the packet that carries ACK are copied as a plurality ofly, ACK bag that is duplicated or the packet that carries ACK are sent to the sending module of eating dishes without rice or wine;
The sending module of eating dishes without rice or wine is transmitted on eating dishes without rice or wine from the TCP layer data bag of described judge module or from the ACK bag of division module or carry the packet of ACK.
Preferably, described division module comprises:
The threshold value dispensing unit is used to preserve the pre-configured first threshold and second threshold value, wherein second threshold value>first threshold;
Monitoring means is used to monitor the service source message transmission rate and eats dishes without rice or wine message transmission rate, and the ratio k of the computing service source data transmission rate and the message transmission rate of eating dishes without rice or wine;
Comparing unit is used for ratio k that described monitoring means is calculated and the threshold value that described threshold value dispensing unit sets in advance and compares, and exports comparative result;
Adjustment unit, if the comparative result of described comparing unit output be ratio k less than first threshold, the number N that then divides ACK is set to equal predefined fixed splitting number; If described comparative result be ratio k greater than second threshold value, the number N that then will divide ACK makes zero; If described comparative result be ratio k between the first threshold and second threshold value, then adjust the number N of division ACK.
The division processing unit is used for the number N according to the division ACK of described adjustment unit output, and the packet that described ACK is wrapped or carries ACK copies as N+1.
Described threshold value dispensing unit can also further be provided with I threshold interval between the first threshold and second threshold value, corresponding each threshold interval is provided with corresponding division and adjusts granularity [n 0, n 1..., n i, n I+1..., n I-1]; I is the integer more than or equal to 1;
Described comparing unit is a ratio k between the first threshold and second threshold value time obtaining comparative result, determines that further granularity is adjusted in the division of the present threshold interval correspondence of ratio k, and should divide the adjustment granularity and notify adjustment unit;
It is unit that described adjustment unit is used for adjusting granularity with described division, adjusts the number N of division ACK.
The above only is preferred embodiment of the present invention, not in order to restriction the present invention, all any modifications of being done within the spirit and principles in the present invention, is equal to and replaces and improvement etc., all should be included within protection scope of the present invention.

Claims (8)

1. an improved transmission control protocol TCP acts on behalf of implementation method, it is characterized in that, comprises the steps:
A, radio network controller (RNC) receive and buffer memory wraps from the TCP/IP group of core net;
B, RNC resolve the TCP/IP group bag of institute's buffer memory, extract TCP layer data bag;
C, RNC judge that whether described TCP layer data bag is ACK bag or the packet that carries ACK, if, execution in step D then; Otherwise directly on eating dishes without rice or wine, transmit this TCP layer data bag and return steps A; And
D, according to the data in buffer amount and/or the throughput of eating dishes without rice or wine that monitors, dynamically determine the number of division ACK, and copy as described ACK bag or the packet that carries ACK a plurality of according to the number of determined division ACK, on eating dishes without rice or wine, transmit the packet that described ACK wrapped or carried ACK, and return steps A.
2. method according to claim 1 is characterized in that, the pre-configured first threshold and second threshold value, wherein second threshold value>first threshold in RNC;
Described basis is the data in buffer amount and/or the throughput of eating dishes without rice or wine that monitors, determines that dynamically the number of division ACK comprises:
The monitoring service source message transmission rate and the message transmission rate of eating dishes without rice or wine;
The ratio k of the computing service source data transmission rate and the message transmission rate of eating dishes without rice or wine;
Described ratio k and the described threshold value that sets in advance are compared, and less than first threshold, the number that then divides ACK is set to equal predefined fixed splitting number N=N as if ratio k 0If ratio k is greater than second threshold value, the number N that then will divide ACK makes zero; If ratio k between the first threshold and second threshold value, is then adjusted the number N of division ACK.
3. method according to claim 2 is characterized in that described first threshold is greater than 0 and less than 1; Described second threshold value is greater than 0 and be less than or equal to 1.
4. method according to claim 2 is characterized in that, if described ratio k is between the first threshold and second threshold value, the number of then adjusting division ACK is: compare with previous k value, if step delta of the every increase of k, the number N that then will divide ACK reduces a granularity n, and N=N-n promptly is set; If k whenever reduces a step delta, the number N that then will divide ACK increases a granularity n, and N=N+n promptly is set, and wherein, Δ is the change step of k, and n is the granularity of division number N, and value is more than or equal to 1 and smaller or equal to N 0Integer, the configuration of Δ and n needs to guarantee N 0 n > = ( Thresh 2 - Thresh 1 ) / Δ , Thresh 1And Thresh 2Represent the first threshold and second threshold value respectively.
5. method according to claim 4 is characterized in that, I threshold interval is set between the first threshold and second threshold value, and corresponding each threshold interval is provided with corresponding division and adjusts granularity [n 0, n 1..., n i, n I+1..., n I-1]; I is the integer more than or equal to 1;
The described number N that will divide ACK increases a granularity n and is: judge the present threshold interval of ratio k, determine that granularity is adjusted in the division of this threshold interval correspondence, granularity is adjusted in determined division of number N increase of division ACK.
6. an improved transmission control protocol TCP acts on behalf of implement device, it is characterized in that, comprising:
Receive and cache module, being used to receive also, buffer memory wraps from the TCP/IP group of core net;
Parsing module is used for the TCP/IP group bag of reception and cache module institute buffer memory is resolved, and extracts TCP layer data bag;
Judge module is used to judge whether the TCP layer data bag that described parsing module extracts is ACK bag or the packet that carries ACK, if the packet that then described ACK is wrapped or carries ACK is sent to the division module; Otherwise this TCP layer data bag is sent to the sending module of eating dishes without rice or wine;
The division module, according to the data in buffer amount and/or the throughput of eating dishes without rice or wine that monitors, dynamically determine the number of division ACK, and according to the number of determined division ACK described ACK bag or the packet that carries ACK are copied as a plurality ofly, ACK bag that is duplicated or the packet that carries ACK are sent to the sending module of eating dishes without rice or wine;
The sending module of eating dishes without rice or wine is transmitted on eating dishes without rice or wine from the TCP layer data bag of described judge module or from the ACK bag of division module or carry the packet of ACK.
7. device according to claim 6 is characterized in that, described division module comprises:
The threshold value dispensing unit is used to preserve the pre-configured first threshold and second threshold value, wherein second threshold value>first threshold;
Monitoring means is used to monitor the service source message transmission rate and eats dishes without rice or wine message transmission rate, and the ratio k of the computing service source data transmission rate and the message transmission rate of eating dishes without rice or wine;
Comparing unit is used for ratio k that described monitoring means is calculated and the threshold value that described threshold value dispensing unit sets in advance and compares, and exports comparative result;
Adjustment unit, if the comparative result of described comparing unit output be ratio k less than first threshold, the number N that then divides ACK is set to equal predefined fixed splitting number; If described comparative result be ratio k greater than second threshold value, the number N that then will divide ACK makes zero; If described comparative result be ratio k between the first threshold and second threshold value, then adjust the number N of division ACK.
The division processing unit is used for the number N according to the division ACK of described adjustment unit output, and the packet that described ACK is wrapped or carries ACK copies as N+1.
8. device according to claim 7 is characterized in that, described threshold value dispensing unit further is provided with I threshold interval between the first threshold and second threshold value, and corresponding each threshold interval is provided with corresponding division and adjusts granularity [n 0, n 1..., n i, n I+1..., n I-1]; I is the integer more than or equal to 1;
Described comparing unit is a ratio k between the first threshold and second threshold value time obtaining comparative result, determines that further granularity is adjusted in the division of the present threshold interval correspondence of ratio k, and should divide the adjustment granularity and notify adjustment unit;
It is unit that described adjustment unit is used for adjusting granularity with described division, adjusts the number N of division ACK.
CN201010122926.XA 2010-03-11 2010-03-11 Improved method and device for realizing transmission control protocol (TCP) proxy Expired - Fee Related CN102195941B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201010122926.XA CN102195941B (en) 2010-03-11 2010-03-11 Improved method and device for realizing transmission control protocol (TCP) proxy

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201010122926.XA CN102195941B (en) 2010-03-11 2010-03-11 Improved method and device for realizing transmission control protocol (TCP) proxy

Publications (2)

Publication Number Publication Date
CN102195941A true CN102195941A (en) 2011-09-21
CN102195941B CN102195941B (en) 2014-03-12

Family

ID=44603336

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201010122926.XA Expired - Fee Related CN102195941B (en) 2010-03-11 2010-03-11 Improved method and device for realizing transmission control protocol (TCP) proxy

Country Status (1)

Country Link
CN (1) CN102195941B (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015196419A1 (en) * 2014-06-26 2015-12-30 华为技术有限公司 State synchronization method and device based on tcp proxy
WO2019104725A1 (en) * 2017-12-01 2019-06-06 华为技术有限公司 Packet transmission method, apparatus, and system

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101114999A (en) * 2007-08-26 2008-01-30 上海华为技术有限公司 Data transmission control method and data transmission set
CN101369877A (en) * 2007-12-27 2009-02-18 华为技术有限公司 Wireless transmission control protocol processing method and equipment

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101114999A (en) * 2007-08-26 2008-01-30 上海华为技术有限公司 Data transmission control method and data transmission set
CN101369877A (en) * 2007-12-27 2009-02-18 华为技术有限公司 Wireless transmission control protocol processing method and equipment

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015196419A1 (en) * 2014-06-26 2015-12-30 华为技术有限公司 State synchronization method and device based on tcp proxy
CN105379222A (en) * 2014-06-26 2016-03-02 华为技术有限公司 State synchronization method and device based on TCP proxy
CN105379222B (en) * 2014-06-26 2018-12-07 华为技术有限公司 State synchronization method and equipment based on TCP agent
WO2019104725A1 (en) * 2017-12-01 2019-06-06 华为技术有限公司 Packet transmission method, apparatus, and system

Also Published As

Publication number Publication date
CN102195941B (en) 2014-03-12

Similar Documents

Publication Publication Date Title
JP5974159B2 (en) Apparatus and method for mitigating backoff caused by TCP protocol in a communication network
JP6178523B2 (en) Transport accelerator implementing request manager and connection manager functionality
Li et al. Buffer sizing for 802.11-based networks
US20180349803A1 (en) Dynamically optimized transport system
WO2013053304A1 (en) Method and device for implementing tcp transmission
US9167473B2 (en) Communication processing method, apparatus and gateway device
CN104301066A (en) Data packet transmission method and device
JP5512699B2 (en) Method for controlling flow in a packet switching network
WO2006065008A1 (en) Apparatus for arq controlling in wireless portable internet system and method thereof
KR100393369B1 (en) Method and apparatus for starting an acknowledgment timer
MXPA06010111A (en) Method and apparatus for isochronous datagram delivery over contention-based data link.
WO2012163305A1 (en) Data transmission control method and device
CN102104908A (en) Data transmission control method and equipment
CN109639340A (en) A kind of TCP accelerated method suitable for satellite link
CN109314884B (en) Service data distribution method and device
WO2006069534A1 (en) A method for adjusting the size of the transmission buffer of rlc sub-layer
WO2019144802A1 (en) Data transmission method and related device
KR20130091051A (en) Method and apparatus for controlling traffic transfer rate based on cell capacity in mobile communication system
WO2014075544A1 (en) Data transmission method and device based on a plurality of types of networks
US20180176136A1 (en) TCP Bufferbloat Resolution
CN111314237A (en) Method, device and equipment for adjusting data packet transmission rate and readable storage medium
CN100486249C (en) Method for adjusting transmission control protocol receive window
CN102263618B (en) Method, device and system for controlling wireless network congestion
CN102281253A (en) Method and device for adjusting AMR (automatic message registering) voice coding rate of IP (internet protocol) interface
KR20130074828A (en) Method and apparatus for control data flow in proxy server

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20140312