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 PDFInfo
- 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
Links
- 230000005540 biological transmission Effects 0.000 title claims abstract description 51
- 238000000034 method Methods 0.000 title claims abstract description 25
- 241000209094 Oryza Species 0.000 claims description 57
- 235000007164 Oryza sativa Nutrition 0.000 claims description 57
- 235000021186 dishes Nutrition 0.000 claims description 57
- 235000009566 rice Nutrition 0.000 claims description 57
- 230000000052 comparative effect Effects 0.000 claims description 15
- 238000012544 monitoring process Methods 0.000 claims description 11
- 239000000284 extract Substances 0.000 claims description 10
- 230000008859 change Effects 0.000 claims description 4
- 238000012545 processing Methods 0.000 claims description 3
- 230000008569 process Effects 0.000 description 7
- 230000007246 mechanism Effects 0.000 description 4
- 239000003795 chemical substances by application Substances 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 238000013461 design Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000005253 cladding Methods 0.000 description 1
- 150000001875 compounds Chemical class 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 230000001737 promoting effect Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
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
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
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 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
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.
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)
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)
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 |
-
2010
- 2010-03-11 CN CN201010122926.XA patent/CN102195941B/en not_active Expired - Fee Related
Patent Citations (2)
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)
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 |