Summary of the invention
The technical problem underlying that embodiment of the present invention will solve provides a kind of re-transmission controlling method and transmission equipment, makes that the re-transmission of tcp data bag is more timely.
For solving the problems of the technologies described above, embodiments of the present invention provide a kind of re-transmission controlling method, may further comprise the steps:
Reception is from the tcp data bag of transmitting terminal;
The tcp data bag is cut apart, and the child bag after will cutting apart sends to receiving terminal, in the link of transmission son bag to small part be Radio Link;
If when the time of reception estimated arrives, do not receive the affirmation signaling ACK of receiving the tcp data bag from the expression of receiving terminal, and the tcp data bag cuts apart the child bag that obtains and all sends to receiving terminal, then retransmits the tcp data bag.
Embodiments of the present invention also provide a kind of re-transmission controlling method, may further comprise the steps:
Reception is from the tcp data bag of transmitting terminal;
The tcp data bag is cut apart, and the child bag after will cutting apart sends to receiving terminal, in the link of transmission divided data bag to small part be Radio Link;
If receive the signaling NAK that receives the child bag failure after cutting apart from the expression of receiving terminal, then retransmit the tcp data bag.
Embodiments of the present invention also provide a kind of transmission equipment, comprising:
The TCP receiving element is used to receive the tcp data bag from transmitting terminal;
The TCP transmitting element is used to send the tcp data bag that receiving element is received;
Cutting unit is used for the tcp data bag from the TCP transmitting element is divided into the son bag;
The bag transmitting element is used for that the tcp data bag is cut apart the child bag that obtains and sends to receiving terminal, in the link of transmission son bag to small part be Radio Link;
First judging unit is used to judge when the time of reception of estimating arrives, and whether receives the affirmation signaling ACK of representing to receive the tcp data bag;
Second judging unit is used for judging when not receiving ACK at first judging unit, judges that the tcp data bag cuts apart the child bag that obtains and whether all send to receiving terminal, if all send, then indicates TCP transmitting element re-transmission tcp data bag.
Embodiments of the present invention also provide a kind of transmission equipment, comprising:
The TCP receiving element is used to receive the tcp data bag from transmitting terminal;
The TCP transmitting element is used to send the tcp data bag that receiving element is received;
Cutting unit is used for the tcp data bag from the TCP transmitting element is divided into the son bag;
The bag transmitting element is used for that cutting unit is cut apart the child bag that obtains and sends to receiving terminal, in the link of transmission son bag to small part be Radio Link;
First judging unit is used to judge whether to receive that expression receives the signaling NAK of son bag failure, if then indicate the TCP transmitting element to retransmit the tcp data bag.
Embodiment of the present invention compared with prior art, the main distinction and effect thereof are:
By when needs retransmit the tcp data bag, judge that this tcp data bag cuts apart the child bag that obtains and all send to receiving terminal, can determine currently whether congestedly to eat dishes without rice or wine, under the not congested situation of eating dishes without rice or wine, can directly retransmit this tcp data bag, make that the re-transmission of tcp data bag is more timely.
If after sending the son bag, receive the signaling NAK that the expression from receiving terminal takes defeat, then show the former of current packet loss because error code directly retransmits the tcp data bag, make that the re-transmission of tcp data bag is more timely.
Embodiment
For making the purpose, technical solutions and advantages of the present invention clearer, embodiments of the present invention are described in further detail below in conjunction with accompanying drawing.
First execution mode of the present invention relates to a kind of method that retransmits control.
In the present embodiment, proxy module, eat dishes without rice or wine to send and the retransmission process module between can communicate by letter, reach more quickly by this mode and to trigger the purpose that retransmits, discerns the packet loss reason more accurately, thereby control wireless transmission better, reducing or to avoid the re-transmission of TCP transmitting terminal and start slowly as far as possible, and then improve the TCP throughput.In order to make proxy module, to eat dishes without rice or wine to communicate by letter more easily between transmission and the retransmission process module, proxy module and eat dishes without rice or wine transmission and retransmission process module can be implemented in together, as shown in Figure 2, proxy module can be arranged on same veneer (as the FMR plate) with eat dishes without rice or wine transmission and retransmission process module, proxy module can be positioned at eats dishes without rice or wine to send and retransmission process module position adjacent, wherein, transmission and the retransmission process module of eating dishes without rice or wine can be radio link protocol (Radio Link Protocol is called for short " RLP ") processing module.Be respectively arranged with buffering in proxy module and the RLP processing module among Fig. 2, wherein the FTx buffering is used for buffer memory packet to be sent, and the RTx buffering is used for up signaling such as ACK and the NAK of buffer memory from receiving terminal.Because the realization position of proxy module is near wireless side, thereby make proxy module not only can resolve the tcp data bag, stress to pass the occupying of the link re-transmission bandwidth of A8 link (as alleviated) but also alleviated the cost of local re-transmission and BS.Need to prove, above-mentioned proxy module, eat dishes without rice or wine to send and the retransmission process module also can not be arranged in the equipment, as being separately positioned in base station and the base station controller,, can realize present embodiment equally as long as can communicate by letter between above-mentioned each module.In addition, above-mentioned each module also can all be arranged in the base station controller.
Flow process to the re-transmission controlling method of present embodiment is specifically described below, as shown in Figure 3.
In step 301, proxy module receives the tcp data bag from transmitting terminal, can carry out buffer memory to the tcp data bag of receiving, can be cached to the FTx buffering among Fig. 2.
In step 302, proxy module sends the tcp data bag of being received to the RLP processing module.The copy that keeps a tcp data bag simultaneously on the proxy module.
In step 303, the RLP processing module is according to Service Data Unit (Service Data Unit, abbreviation " SDU ") size is cut apart to sent the tcp data bag, and the SDU bag that generates is buffered in eats dishes without rice or wine to send buffering area (being the RLP FTx buffering among Fig. 2), send to receiving terminal, in the link of transmission SDU bag to small part be Radio Link.The RLP processing module keeps the sequence number of TCP bag and the corresponding relation of the sequence number (being the RLP sequence number) that SDU wraps.Fixing precedence relationship not between step 303 and the step 304.In addition, the above-mentioned step of cutting apart the tcp data bag also can be undertaken by proxy module, proxy module is directly cut apart the tcp data bag that need send, and generates the SDU bag, and the corresponding relation of the sequence number that the sequence number and the SDU of the SDU bag that generates and TCP bag wrapped sends to the RLP processing module.
In step 304, proxy module is estimated this and is received the time that the expression receiving terminal successfully receives the affirmation signaling ACK of corresponding tcp data bag.For example, can add up each tcp data bag from sending to the used time of ACK of receiving that the TCP receiving terminal returns, receive the required time of ACK behind the tcp data bag and carry out filtering sending for N time before, estimate the time of reception that this receives ACK according to the filtering result.Concrete filtering method can be N mean value from transmission tcp data bag to reception ACK required time before calculating, before perhaps can removing N time from sending the tcp data bag to the maximum and the minimum value of reception ACK the required time, calculate its mean value again, perhaps other easy computational methods.Owing to when estimating time of reception, can need not to adopt the similar calculating of RTO, directly according to the history value that receives the ACK required time, estimate the time of reception of this ACK, implement very simple.Need to prove that this step is an optional step, this ACK time of reception of estimating also can be estimated and obtain and preserve, and in the case, directly enters step 305.
In step 305, when the time of reception estimated arrives, judge whether to receive the ACK of the tcp data bag of corresponding this transmission, if receive to ACK that should the tcp data bag, then enter step 306,, then enter step 307 if do not receive the ACK of the tcp data bag of corresponding this transmission.
In step 306, because proxy module in the time of reception of estimating, is received the ACK of corresponding tcp data bag, the expression receiving terminal has successfully been received the tcp data bag, then can delete the copy of this tcp data bag that keeps on the proxy module.This step is an optional step.
In step 307, because proxy module is in the time of reception of estimating, for receiving the ACK of corresponding tcp data bag, the tcp data bag that proxy module retransmits to the transmission of RLP processing module.
In step 308, the RLP processing module is according to the sequence number of the TCP bag of being preserved and the corresponding relation of the sequence number that SDU wraps, judge that eating dishes without rice or wine to send the SDU bag that whether has this tcp data bag to generate in the buffering area does not send as yet, if the SDU bag that has this tcp data bag to generate does not send as yet, then enter step 309, abandon the tcp data bag of this re-transmission, do not retransmit; If the SDU bag of this tcp data bag generation does not send as yet, then enter step 310.
Specifically, the congested situation if eat dishes without rice or wine, eat dishes without rice or wine to send the SDU bag that may still exist the tcp data bag to generate in the buffering area and do not send as yet, and proxy module may not initiate to retransmit to the RLP processing module because receive the ACK of corresponding tcp data bag to reply in estimating time of reception.This moment, the RLP processing module judged that by the corresponding relation that detects TCP sequence number and SDU sequence number whether the SDU bag that this tcp data bag generates does not send as yet, if the SDU bag that exists this tcp data bag to generate does not send as yet, does not then retransmit this tcp data bag.By before retransmitting the tcp data bag, detect and eat dishes without rice or wine to send the SDU bag that whether has in the buffering area should the tcp data bag and send as yet, can determine whether the actual cause of this tcp data bag packet loss is congested for eating dishes without rice or wine, thereby avoid unnecessary retransmission.As seen,, can more effectively control, so that retransmit fast or rate controlled to wireless transmission by judging the packet loss reason exactly.
In step 310, the tcp data bag that retransmits is divided into the SDU bag, send to receiving terminal.Can insert the front end of eating dishes without rice or wine to send buffering area with cutting apart the SDU bag that obtains, preferentially send these SDU bags, thereby accelerated the re-transmission speed of tcp data bag.
In addition, in the present embodiment, if proxy module is after retransmitting this tcp data bag, received ACK that should the tcp data bag, then send buffering area and detect,, then indicate the RLP processing module to stop to send the SDU that does not send as yet at once and wrap to receiving terminal if send as yet at the SDU bag of eating dishes without rice or wine to send the tcp data bag generation that still has re-transmission in the buffering area to eating dishes without rice or wine, and delete the SDU bag that does not send as yet, thereby saved transfer resource.
If proxy module is received a plurality of ACK to repetition that should the tcp data bag continuously, then sending buffering area to eating dishes without rice or wine detects, send the SDU bag that has the tcp data of re-transmission bag to generate in the buffering area if eat dishes without rice or wine and send as yet, then proxy module is tackled the ACK of the repetition of receiving; The SDU bag that sends the tcp data bag generation that does not have re-transmission in the buffering area if eat dishes without rice or wine sends as yet, and then proxy module passes through the TCP transmitting terminal with the ACK that retransmits, and is retransmitted by the TCP transmitting terminal.
By when the ACK of the repetition of receiving a plurality of corresponding tcp data bags continuously, send buffering area to eating dishes without rice or wine and detect, thereby avoid under the situation that retransmits this tcp data bag, trigger transmitting terminal and initiate unnecessary retransmission.
In addition, for fear of unconfined re-transmission, proxy module reaches at the number of times that retransmits the tcp data bag and is scheduled in limited time in the present embodiment, stops to retransmit this tcp data bag, carries out other processing, and concrete processing mode is same as the prior art.
Second execution mode of the present invention relates to a kind of re-transmission controlling method equally, in the present embodiment, tcp data bag to be sent is generated the SDU bag, send to receiving terminal by Radio Link, if receive the signaling unconfirmed (Not Acknowledgment is called for short " NAK ") that receives corresponding SDU bag from the expression of receiving terminal, and after retransmitting this SDU bag, still receive NAK, then retransmit this tcp data bag.Idiographic flow as shown in Figure 4.
In step 401, proxy module receives the tcp data bag from transmitting terminal, can carry out buffer memory to the tcp data bag of receiving.
In step 402, proxy module sends the tcp data bag of being received to the RLP processing module.The copy that keeps a tcp data bag simultaneously on the proxy module.
In step 403, the RLP processing module is cut apart this tcp data bag according to SDU size, generates the SDU bag, and the SDU bag that generates is buffered in eats dishes without rice or wine to send in the buffering area, sends to receiving terminal, in the link of transmission SDU bag to small part be Radio Link.Need to prove that this step of cutting apart the tcp data bag also can be undertaken by proxy module, proxy module is directly cut apart the tcp data bag that need send, and generates the SDU bag, and the SDU bag that generates is sent to the RLP processing module.
Then, enter step 404, the RLP processing module judges whether to receive from receiving terminal represents the NAK that corresponding SDU bag takes defeat, and after retransmitting this SDU bag, still receive NAK,, then enter step 406 if still receive NAK from receiving terminal, if receive ACK, then enter step 405 from receiving terminal.
Specifically, receive represent signaling NAK that the SDU bag takes defeat from receiving terminal after, the RLP processing module is according to this SDU bag of RLP protocols retransmit, if after retransmitting this SDU bag, still receive the NAK that expression SDU bag takes defeat, then enter step 406,, then enter step 405 if receive ACK from receiving terminal.
In step 405, do not carry out TCP and retransmit.
In step 406, owing to receive the NAK signaling of eating dishes without rice or wine twice, show the former of current packet loss because of error code, RLP processing module request broker module retransmits this tcp data bag.
In step 407, the RLP processing module judges that eating dishes without rice or wine to send other SDU bag that whether exists this tcp data bag to generate in the buffering area does not send as yet, if other SDU bag that exists this tcp data bag to generate does not send as yet, then enter step 408, if there is no other SDU bag of this tcp data bag generation sends as yet, then directly enters step 409.
In step 408, the RLP processing module is deleted the SDU that does not the send bag that this tcp data bag generates.Owing to will retransmit this tcp data bag afterwards, abandon all the other SDU bags that current this tcp data bag that does not send as yet generates, can avoid the SDU bag of this tcp data bag correspondence to be repeated transmission, thereby save transfer resource, meanwhile, also accelerated the speed that retransmits.
In step 409, proxy module retransmits this tcp data bag.That is to say, proxy module resends the processing module to RLP with the copy of the tcp data bag of reservation, generates the SDU bag by the RLP processing module, and this SDU bag can be inserted the front end of eating dishes without rice or wine to send buffering area, preferential this SDU that sends wraps, thereby accelerates the re-transmission speed of tcp data bag.
In the present embodiment, if proxy module is received the ACK of the repetition of a plurality of corresponding tcp data bags continuously, send buffering area to eating dishes without rice or wine so and detect, send as yet if eat dishes without rice or wine to send the SDU bag that has the tcp data of re-transmission bag to generate in the buffering area, then the ACK to the repetition of receiving tackles; The SDU bag that sends the tcp data bag generation that does not have re-transmission in the buffering area if eat dishes without rice or wine sends as yet, and proxy module then passes through the TCP transmitting terminal with the ACK that repeats, and is retransmitted by the TCP transmitting terminal.Thereby avoid under the situation that retransmits this tcp data bag, trigger transmitting terminal and initiate unnecessary retransmission.
Need to prove, in the present embodiment, when the re-transmission of eating dishes without rice or wine is once failed, the re-transmission of beginning tcp data bag, and in actual applications, also can be according to the situation of eating dishes without rice or wine, just pass failure at SDU bag, the time directly carry out the re-transmission of tcp data bag, or retransmitting when repeatedly failing, as three times the failure etc., just carry out the re-transmission of tcp data bag.
In addition, for fear of unconfined re-transmission, in the present embodiment, proxy module can reach at the number of times that retransmits the tcp data bag to be scheduled in limited time, stops to retransmit this tcp data bag, carries out other processing, and concrete processing mode can be same as the prior art.
The 3rd execution mode of the present invention relates to a kind of re-transmission controlling method equally, present embodiment combines first execution mode and second execution mode, in the present embodiment, if receive the NAK that receives the failure of corresponding SDU bag from the expression of receiving terminal, then retransmit this tcp data bag, and, if when the time of reception of estimating arrives, do not receive ACK that should the tcp data bag, and all SDU bags of this tcp data bag correspondence all send, then retransmit this tcp data bag.
Need to prove, each above-mentioned execution mode, be applicable to all wireless systems, comprise CDMA 2000 (Code Division Multiple Access 2000, abbreviation " CDMA2000 ") data-optimized (the Evolution-Data Optimized of 1x evolution, abbreviation " EV-DO "), the wireless system of Wideband Code Division Multiple Access (WCDMA) (Wideband Code Division Multiple Access is called for short " WCDMA ") and other bearer data transmission.As long as proxy module is in the same place with the RLP processing modules implement, promptly belong to the scope of embodiments of the present invention.
The 4th execution mode of the present invention relates to a kind of transmission equipment, as shown in Figure 5, comprises proxy module and RLP processing module.
Wherein, comprise in the proxy module: the TCP receiving element is used to receive the tcp data bag from transmitting terminal; The TCP transmitting element is used for the tcp data bag is sent to the RLP processing module; TCP replys receiving element, is used to receive the affirmation signaling ACK of receiving this tcp data bag from the expression of this receiving terminal; First judging unit is used to judge when the time of reception of estimating arrives, and whether this TCP replys receiving element and receive ACK that should the tcp data bag.
Comprise in the RLP processing module: cutting unit is used for the tcp data bag that proxy module sends is divided into the son bag; The bag transmitting element is used for that this tcp data bag is cut apart the child bag that obtains and sends to receiving terminal, transmit in the link of this child bag to small part be Radio Link; Second judging unit is used for judging when not receiving this ACK at this first judging unit, judges that this tcp data bag cuts apart the child bag that obtains and whether all send to this receiving terminal, if all send, then indicates this TCP transmitting element to retransmit this tcp data bag.Thereby under the situation of getting rid of network congestion, make that the re-transmission of tcp data bag is more timely.
Need to prove that in the present embodiment, the cutting unit and second judge module also can be in proxy modules not necessarily in the RLP processing module.
This transmission equipment can also comprise estimates the unit, is used for receiving the required time of ACK after sending the tcp data bag for N time before, estimates the time of reception of this ACK.Therefore can need not to adopt the similar calculating of RTO, it is very simple to make embodiments of the present invention implement.Since this estimate the unit and after each unit of comprising all are selectable units, no longer embody in the accompanying drawings.
This transmission equipment can also comprise delete cells, is used to delete the tcp data bag and cuts apart the child bag that obtains;
The 3rd judging unit, be used to judge after this time of reception of estimating arrives, whether receive ACK that should the tcp data bag, if receive then judge that tcp data bag that whether this bag transmitting element will retransmit cuts apart the child bag that obtains and all send to this receiving terminal, if all transmissions then this child bag of indicating this delete cells deletion not send, thereby, saved transfer resource effectively.
Whether this transmission equipment can also comprise eats dishes without rice or wine to reply receiving element, be used to receive receive from the expression of receiving terminal and to cut apart replying of back son bag; The 4th judging unit is used to judge whether to receive that expression receives the signaling NAK of this child bag failure, if then indicate this TCP transmitting element to retransmit this tcp data bag.Thereby reach quick re-transmission truly.And the child bag that the tcp data bag that retransmits can be generated is inserted the front end of eating dishes without rice or wine to send buffering area, the preferential transmission, thereby the re-transmission speed of quickening tcp data bag.
Need to prove, in the present embodiment, just pass when failure at the child bag, the re-transmission of beginning tcp data bag, and in actual applications also can be according to the situation of eating dishes without rice or wine, and when retransmitting the one or many failure, as three failures etc., just carries out the re-transmission of tcp data bag.
This transmission equipment can also comprise that TCP replys transmitting element, is used for that TCP is replied the ACK that receiving element receives and sends to transmitting terminal; The 5th judging unit, be used for replying receiving element when receiving ACK to repetition that should the tcp data bag continuously at TCP, the child bag of judging the tcp data bag generation whether this bag transmitting element will retransmit all sends to this receiving terminal, if all transmissions then indicate this TCP to reply the ACK that transmitting element is tackled this repetition, if all transmissions then indicate this TCP to reply the ACK that transmitting element will repeat to pass through this transmitting terminal.Thereby avoid under the situation that retransmits this tcp data bag, trigger transmitting terminal and initiate unnecessary retransmission.
In addition, what deserves to be mentioned is that each unit in the present embodiment is logical block, in actual applications, various physics realization mode can be arranged.And the title of above-mentioned each unit and module is variable, also can be called other title as proxy module and RLP processing module.
The 5th execution mode of the present invention relates to a kind of transmission equipment equally, as shown in Figure 6, comprises proxy module and RLP processing module.
Wherein, comprise in the proxy module: the TCP receiving element is used to receive the tcp data bag from transmitting terminal; The TCP transmitting element is used for the tcp data bag is sent to the RLP processing module.
Comprise in the RLP processing module: cutting unit is used for the tcp data bag that proxy module sends is divided into the son bag; The bag transmitting element is used for that this tcp data bag is cut apart the child bag that obtains and sends to receiving terminal, transmit in the link of this child bag to small part be Radio Link; First judging unit is used to judge whether to receive that expression receives the signaling NAK of this child bag failure, if then indicate this TCP transmitting element to retransmit this tcp data bag, thereby makes that re-transmission is more timely.And the child bag that the tcp data bag that retransmits can be generated is inserted the front end of eating dishes without rice or wine to send buffering area, the preferential transmission, thereby the re-transmission speed of quickening tcp data bag.
Need to prove that in the present embodiment, cutting unit also can be in proxy module not necessarily in the RLP processing module.
In addition, what deserves to be mentioned is, in the present embodiment, when the child bag just passes failure, the re-transmission of beginning tcp data bag, and in actual applications, also can be according to the situation of eating dishes without rice or wine, when retransmitting the one or many failure,, just carry out the re-transmission of tcp data bag as three failures etc.
This transmission equipment can also comprise delete cells, is used to delete the tcp data bag and cuts apart the child bag that obtains; Second judging unit, be used for when this first judging unit indicates this TCP transmitting element to retransmit this tcp data bag, judge whether this bag transmitting element has been finished whole sons of this tcp data bag correspondence and wrapped once transmission, do not wrap transmission once then indicate this delete cells to delete the child bag that this does not send if finish these whole sons.Thereby, saved transfer resource.Because this delete cells and second judging unit all are selectable units, no longer embody in the accompanying drawings.
Each unit in the present embodiment is logical block, in actual applications, various physics realization mode can be arranged.And the title of above-mentioned each unit and module is variable, also can be called other title as proxy module and RLP processing module.
In sum, in embodiments of the present invention,, do not receive that the expression tcp data bag of receiving terminal receives successful signaling ACK, then prepare to retransmit the tcp data bag, make that the re-transmission of tcp data bag is more timely if when the time of reception of estimating arrives.When needs retransmit the tcp data bag, judge that further the child bag that this tcp data bag generates all sends to receiving terminal, by this judgement can determine current eat dishes without rice or wine whether congested, under the not congested situation of eating dishes without rice or wine, can directly retransmit this tcp data bag, congested then refusal retransmits if eat dishes without rice or wine, thereby avoids the emphasis network congestion situation.
After sending the child bag of tcp data bag generation on the Radio Link, wrap the signaling NAK that takes defeat if receive expression from receiving terminal, then show the former of current packet loss because error code retransmits this tcp data bag, make that the re-transmission of tcp data bag is more timely.
Can need not to adopt the similar calculating of RTO,, estimate the time of reception of this ACK, implement very simple directly according to the history value that receives the ACK required time.
If after the time of reception of estimating arrives, receive ACK that should the tcp data bag, then detect and eat dishes without rice or wine to send the sub-Bao Shangwei that whether has in the buffering area the tcp data bag that should retransmit and send, if having then delete this a little bag that does not send, the saving transfer resource.
The child bag that the tcp data bag that retransmits generates is inserted the front end of eating dishes without rice or wine to send buffering area, the preferential transmission, thereby the re-transmission speed of quickening tcp data bag.
When the ACK that receives continuously repetition that should the tcp data bag, detect and eat dishes without rice or wine to send the sub-Bao Shangwei that whether has the tcp data of this re-transmission bag to generate in the buffering area and send, if having then tackle the ACK that repeats, if do not have then the ACK of repetition is passed through transmitting terminal.Thereby avoid under the situation that retransmits this tcp data bag, trigger transmitting terminal and initiate unnecessary retransmission.
Though pass through with reference to some of the preferred embodiment of the invention, the present invention is illustrated and describes, but those of ordinary skill in the art should be understood that and can do various changes to it in the form and details, and without departing from the spirit and scope of the present invention.