Summary of the invention
Main purpose of the present invention is to provide a kind of data message request retransmission scheme, owing to lack the CRC coding of the data cell of utilizing the packet in the transmission packet is carried out verification and error correction to solve at least in the prior art, and the packets need that causes frequently retransmits, and influences the problem of efficiency of transmission.
According to an aspect of the present invention, provide a kind of data message request retransmission method.This method comprises: receiving terminal receives the data message from transmitting terminal, and wherein, this data message comprises at least one data cell, and each data cell comprises and carries a CRC coded data head and carry the 2nd CRC coded data body; CRC coding and the 2nd CRC coding according to each data cell in above-mentioned at least one data cell carry out verification and error correction to the data message; Under the situation to data message error correction failure, the number of retransmissions current according to this data message determines whether to notify transmitting terminal to resend this data message.
Further, the number of retransmissions that receiving terminal is current according to data message determines whether to notify transmitting terminal to resend this data message and comprises: judge that whether current number of retransmissions is less than predefined maximum retransmission; If then receiving terminal notice transmitting terminal resends this data message; Otherwise receiving terminal is preserved this data message.
Further, according to a CRC of each data cell in above-mentioned at least one data cell coding with the data message is carried out verification to the 2nd CRC coding and error correction comprises: obtaining step, obtain a data unit of this data message, the execution error correction step; Error correction step, according to a CRC of the current data cell of obtaining coding and the 2nd CRC coding this data cell is carried out CRC check and error correction, if the CRC error correction of this data cell failure, then determine this data message error correction failure, otherwise carry out determining step; Determining step, judge whether this data cell is last data cell of this data message, if then preserve this data message; Otherwise, obtain the next data cell of this data message, carry out error correction step.
Further, the CRC error correction of above-mentioned data cell failure comprises: the CRC error correction failure of the data head of data cell.
Further, the CRC error correction of data cell failure comprises: the CRC check success of the data head of data cell or the CRC error correction of data head success, and the CRC error correction of the data volume of data cell failure.
Further, whether the CRC error correction of the data head of judgment data unit is successful in the following manner: encode according to a CRC, the data head that carries out the data cell after the CRC error correction is carried out CRC verification again, if the verification succeeds again of data head, the then CRC error correction of the data head of this data cell success, otherwise, the CRC error correction failure of the data head of this data cell;
Preferably, whether the CRC error correction of the data volume of judgment data unit is successful in the following manner: encode according to the 2nd CRC, the data volume that carries out the data cell after the CRC error correction is carried out CRC check again, if the verification succeeds again of data volume, the then CRC error correction of the data volume of this data cell success, otherwise, the CRC error correction failure of the data volume of data cell.
Further, if carry FEC coding in the data message, carry out CRC check and error correction in the data unit that obtains data message and to this data cell before, this method also comprises: according to the FEC coding, this data message is carried out verification and error correction; The verification failure again of data message after the affirmation error correction.
According to another aspect of the present invention, a kind of data message request retransmission device is provided, this device comprises: the data message receiver module, be used for receiving the data message from transmitting terminal, wherein, this data message comprises at least one data cell, and each data cell comprises and carries a CRC coded data head and carry the 2nd CRC coded data body; Data cell verification and correction module, be used for according to CRC coding and the 2nd CRC coding of above-mentioned at least one each data cell of data cell described data message being carried out verification and error correction, if this data message error correction failure, then trigger and retransmit control module, otherwise the trigger data message is preserved module; Retransmit control module, be used for determining whether to notify transmitting terminal to resend data message according to the current number of retransmissions of above-mentioned data message; Data message is preserved module, is used for preserving above-mentioned data message.
Further, above-mentioned data cell verification and correction module comprise: data cell is obtained submodule, is used for obtaining a data unit of described data message, a trigger data syndrome module; Described data head syndrome module, be used for the CRC coding according to the data cell of current verification, data head to the data cell of current verification carries out verification, if the CRC check of the data head of current verification success, then trigger data sports school tests submodule, otherwise, a trigger data error correction submodule; Data head error correction submodule is used for the CRC coding according to the data cell of current error correction, and the data head of the data cell of current error correction is carried out error correction, the error correction success, and then trigger data sports school tests submodule, retransmits control module otherwise trigger; Data volume syndrome module is used for the 2nd CRC coding according to the data cell of current verification, and the data volume of the data cell of current verification is carried out verification, if the verification succeeds of the data volume of current verification, trigger data unit judges submodule then, otherwise, trigger data body error correction submodule; Data volume error correction submodule is used for the 2nd CRC coding according to the data cell of current error correction, and the data volume of the data cell of current error correction is carried out error correction, the error correction success, and trigger data unit judges submodule then, otherwise, trigger retransmitting control module; Data cell is judged submodule, whether be used for the judgment data unit is last data cell of data message, if then the trigger data message is preserved module and preserved data message, otherwise the trigger data unit obtains the next data cell that submodule obtains data message.
Further, above-mentioned re-transmission control module comprises: number of retransmissions is judged submodule, is used for judging that whether current number of retransmissions is less than predefined maximum retransmission, if, then trigger resend messages and send submodule, otherwise the trigger data message is preserved module; Resend messages sends submodule, is used for sending resend messages to transmitting terminal, resends above-mentioned data message with the notice transmitting terminal.
Further, if the data message that above-mentioned data message receiver module receives carries the FEC coding, then data message request retransmission device can also comprise: forward error correction block, be used for encoding according to FEC, this data message is carried out verification and error correction, if the verification succeeds of data message or error correction success, then the trigger data message is preserved module and is preserved this data message, otherwise, the verification of trigger data unit and correction module.
By the present invention, utilize the CRC coding of each data cell in the data message that the data message is carried out verification and error correction, whether needs retransmit according to the number of retransmissions specified data message of the error correction result of data message and data message, thereby make that the error correcting capability of data message is stronger, reduced the number of times that retransmits, improve the efficiency of transmission of data message, improved the bandwidth availability ratio of communication link system.
Embodiment
Hereinafter will describe the present invention with reference to the accompanying drawings and in conjunction with the embodiments in detail.Need to prove that under the situation of not conflicting, embodiment and the feature among the embodiment among the application can make up mutually.
Fig. 1 is the Organization Chart according to the communication system of the embodiment of the invention.
As shown in Figure 1, this system comprises: transmitting terminal 11, receiving terminal 12 and the communication link 13 that is used for data message transmission.Need to prove that this communication system can be wired communication system, also can be wireless communication system.
Transmitting terminal 11 sends datagram to receiving terminal 12, and wherein, this data message comprises one or more data cells, and each data cell comprises: carry a CRC coded data head and carry the 2nd CRC coded data body.
If this communication system is supported the HARQ technology, then above-mentioned data message can also carry the FEC coding.
Receiving terminal 12 receives above-mentioned data message, and according to a CRC of the data cell in data message coding and the 2nd CRC coding this data message is carried out verification and error correction, whether needs resend this data message according to the result of verification and error correction and the number of times decision transmitting terminal of the current re-transmission of this data message.
If above-mentioned data message has carried the FEC coding, then before carrying out CRC check and error correction, this data message is carried out FEC verification and error correction earlier, if FEC verification and error correction success, then need not to carry out CRC check and error correction, if the FEC error correction is failed then carried out CRC check and error correction.
Below in conjunction with specific embodiment the data message request retransmission scheme that the embodiment of the invention provides is described in detail.
According to embodiments of the invention, at first provide a kind of data message request retransmission method.
Fig. 2 is the flow chart according to the data message request retransmission method of the embodiment of the invention, as in conjunction with Figure 1 and Figure 2, comprises (step 202-step 206) according to the data message request retransmission method of the embodiment of the invention:
Step 202, receiving terminal receive the data message from transmitting terminal, and wherein, this data message comprises at least one data cell, and each data cell comprises and carries the first cyclic redundancy check (CRC) coded data head and carry the 2nd CRC coded data body;
If communication system is supported the HARQ technology, then above-mentioned data message can also carry the FEC coding.
Step 204, according to a CRC of each data cell at least one data cell coding and the 2nd CRC coding this data message is carried out verification and error correction;
If above-mentioned data message has carried the FEC coding, then before carrying out CRC check and error correction, this data message is carried out FEC verification and error correction earlier, if FEC verification and error correction success, then need not to carry out CRC check and error correction, if the FEC error correction is failed then carried out CRC check and error correction.
Step 206, under the situation to this data message error correction failure, the number of retransmissions current according to this data message determines whether to notify transmitting terminal to resend this data message.
The number of retransmissions current according to data message determines whether to notify transmitting terminal to resend this data message and may further comprise the steps (step 2061-step 2063):
Step 2061, whether judge current number of retransmissions less than predefined maximum retransmission, if then execution in step 2062, otherwise, execution in step 2063;
Step 2062, then receiving terminal notice transmitting terminal resends this data message;
Step 2063, receiving terminal are preserved data message.
For how explaining to encode according to the CRC coding of each data cell at least one data cell and the 2nd CRC this data message being carried out verification and error correction, will introduce the concrete grammar of execution in step 204 below.
In concrete implementation process, can extract the data cell in the data message, parse second CRC check coding of the data volume of the CRC test code of data head of data cell and this data cell, according to CRC coding and the 2nd CRC coding of each data cell corresponding data cell is carried out verification and error correction.In case certain data cell error correction failure is then determined this data message error correction failure, and is carried out above-mentioned steps 206 and carry out subsequent treatment.
In specific implementation process, can carry out verification and error correction to the data cell in the data message in the following manner:
At receiving terminal a CRC check and correction module only are set, order is extracted the data cell of data message and is carried out verification and error correction, and Fig. 3 is the flow chart according to the embodiment of the invention, and as shown in Figure 3, this flow process comprises (step 302-step 308):
Step 302, obtain a data unit of data message, execution in step 304;
Step 304, according to a CRC of the current data cell of obtaining coding and the 2nd CRC coding this data cell is carried out CRC check and error correction;
If described data message error correction failure is then determined in the CRC error correction of this data cell of step 306 failure, otherwise, execution in step 308;
Step 308, judge whether the current data unit is last data cell of data message.If then preserve data message; Otherwise order is obtained the next data cell of data message, execution in step 304.
In above-mentioned steps 306, can by but be not limited to following mode and judge whether the current data unit is last data cell of data message: have according to the receipts of accumulative total verification and error correction that the length of the length of data cell and above-mentioned data message is whether consistent to be judged.Equal in length is then represented the verification error correction of all data cells, otherwise expression also has the data cell without verification and detection.
In specific implementation process, at upper type, according to CRC coding and the 2nd CRC coding of the current data cell of obtaining this data cell is carried out verification and error correction, verification comprises following several with regard to the result of error correction:
(1) data cell verification succeeds
The data head verification succeeds of this data cell, and also success of the data volume verification of this data cell.
(2) data cell error correction success
The i.e. data head verification succeeds of this data cell, the data volume error correction success of this data cell; Or,
The data head error correction success of this data cell, the data volume verification succeeds of this data cell; Or,
The data head error correction success of this data cell, the data volume error correction success of this data cell.
(3) data cell error correction failure
The error correction failure of the data head of this data cell; Or,
The verification succeeds of the data head of this data cell, and the CRC error correction of the data volume of described data cell failure; Or,
The CRC error correction success of the data head of this data cell, and the CRC error correction of the data volume of described data cell failure.
At above three kinds of situations, can but be not limited to the whether success of CRC error correction of the data head of judgment data unit in the following manner: according to the CRC coding of this data cell, the data head that carries out after the CRC error correction is carried out CRC verification again, if the verification succeeds again of this data head, then determine the CRC error correction success of the data head of this data cell, otherwise, determine the CRC error correction failure of the data head of this data cell.
At above three kinds of situations, can but be not limited to the whether success of CRC error correction of the data head of judgment data unit in the following manner: according to the 2nd CRC coding of this data cell, the data volume that carries out after the CRC error correction is carried out CRC check again, if the verification succeeds again of this data volume, then determine the CRC error correction success of the data volume of this data cell, otherwise, the CRC error correction failure of the data volume of specified data unit.
Because the data message request retransmission method that provides of the embodiment of the invention both had been applicable to wired communication system, also was applicable to wireless communication system, below in conjunction with the embodiment of concrete wireless communication system above-mentioned data message request retransmission method is described in detail.
Need to prove, following examples are with the receiving terminal of WIMAX system CRC check and the error correction result according to data message, whether the specified data message needs to retransmit is example, introduce the data message request retransmission method of the embodiment of the invention in detail, for the data message that adopts the HARQ technical transmission in the WIMAX system each time (Burst data message), all carry out CRC check and the error correction of the data cell (PDU) of MAC layer.
Embodiment one
Fig. 4 is the flow chart according to data message request retransmission method in the WIMAX system of the embodiment of the invention one.
As shown in Figure 4, this flow process may further comprise the steps (step 401-step 408):
Step 401, receiving terminal receive the data message that delivery section sends for the K time;
Step 402, receiving terminal carry out FEC verification and error correction to the data message;
Whether the FEC error correction of step 403, judgment data message success, successful then preserve this data message, otherwise, execution in step 404;
Step 404, i the data unit that obtains data message carry out CRC check and error correction, and the whether error correction failure of judgment data unit is then this data message error correction failure, execution in step 407, otherwise, execution in step 405;
Step 405, judge whether i data cell data unit is last data cell of data message, if then preserve this data message, otherwise, execution in step 406;
Step 406 is obtained next data message, i++, execution in step 404;
Whether step 407, the current transmission number of times of judgment data message K value less than predefined maximum retransmission, if execution in step 408 then, otherwise, preserve this data message.
Step 408, receiving terminal notice transmitting terminal resend this data message, K++.
Embodiment two
In the present embodiment, the step 504 of embodiment one is described in detail, Fig. 5 is the flow chart that the data unit is carried out verification and error correction according to the embodiment of the invention two, and as shown in Figure 5, this flow process comprises (step 501-step 506):
Step 501, earlier extract the data head information of data cell, i.e. top 48 bit informations, CRC is coded in last 8 bits of 48 bits, according to 8 these data heads of bit CRC coding checkout.If verification succeeds does not then need error correction, execution in step 503; Otherwise execution in step 502;
Step 502, data head is carried out 1 bit error correction, verification for the second time is with the whether error correction success of specified data head after the error correction, if the error correction success, then execution in step 503, otherwise specified data unit error correction failure.
Step 503, according to the length of the data cell that provides in the data head that obtains, obtain data volume, and same carry out verification earlier.Check code is 32 bits in the end.If verification succeeds does not then need error correction, specified data unit verification succeeds or error correction success; Otherwise execution in step 504.
Step 504, data volume is carried out 1 bit error correction, and again verification with the whether error correction success of specified data body, if the error correction success, specified data unit error correction success, otherwise, specified data unit error correction failure.
According to embodiments of the invention, also provide a kind of data message request retransmission device.
Fig. 6 is the structural representation according to the data message request retransmission device of the embodiment of the invention, as shown in Figure 6, this device comprises: data message receiver module 61, data cell verification and correction module 62, re-transmission control module 63, data message are preserved module 64, wherein, data message receiver module 61, be used for receiving the data message from transmitting terminal, wherein, data message comprises at least one data cell, and each data cell comprises and carries the first cyclic redundancy check (CRC) coded data head and carry the 2nd CRC coded data body; Data cell verification and correction module 62, be used for according to CRC coding and the 2nd CRC coding of at least one each data cell of data cell the data message being carried out verification and error correction, if this data message error correction failure, then trigger and retransmit control module 63, otherwise the trigger data message is preserved module 64; Retransmit control module 63, be used for determining whether to notify transmitting terminal to resend data message according to the current number of retransmissions of data message; Data message is preserved module 64, is used for preserving data message.
Fig. 7 is according to the data cell verification of the embodiment of the invention and the structural representation of correction module 62.As shown in Figure 7, data cell verification and correction module 62 comprise: data cell is obtained submodule 71, data head syndrome module 72, data head error correction submodule 73, data volume syndrome module 74, data volume error correction submodule 75, data cell judgement submodule 76, wherein, data cell is obtained submodule 71, be used for obtaining a data unit of data message, a trigger data syndrome module 72; Data head syndrome module 72, be used for the CRC coding according to the data cell of current verification, data head to the data cell of current verification carries out verification, if the CRC check of the data head of current verification success, then trigger data sports school tests submodule 74, otherwise, a trigger data error correction submodule 73; Data head error correction submodule 73 is used for the CRC coding according to the data cell of current error correction, and the data head of the data cell of current error correction is carried out error correction, the error correction success, trigger data unit judges submodule 74 then, otherwise, described re-transmission control module 63 triggered; Data volume syndrome module 74, be used for the 2nd CRC coding according to the data cell of current verification, data volume to the data cell of current verification carries out verification, if the verification succeeds of the data volume of current verification, trigger data unit judges submodule 76 then, otherwise, trigger data body error correction submodule 75; Data volume error correction submodule 75 is used for the 2nd CRC coding according to the data cell of current error correction, and the data volume of the data cell of current error correction is carried out error correction, the error correction success, trigger data unit judges submodule 76 then, otherwise, described re-transmission control module 63 triggered; Data cell is judged submodule 76, whether be used for the judgment data unit is last data cell of described data message, if, then the trigger data message is preserved module 64 and is preserved data message, otherwise the trigger data unit obtains the next data cell that submodule 71 obtains described data message.
Fig. 8 is the structural representation according to the re-transmission control module 63 of the embodiment of the invention, as shown in Figure 8, retransmitting control module 63 comprises: number of retransmissions judges that submodule 81, resend messages send submodule 82, wherein, number of retransmissions is judged submodule 81, is used for judging that whether current number of retransmissions is less than predefined maximum retransmission, if, then trigger resend messages and send submodule 82, otherwise the trigger data message is preserved module 64.Resend messages sends submodule 82, is used for sending resend messages to transmitting terminal, resends data message with the notice transmitting terminal.
In specific implementation process, if the communication system of data message transmission adopts HARQ technical transmission data message, then the data message of data message receiver module 61 receptions can carry forward error correction FEC coding.Preferably, as shown in Figure 9, data message request retransmission device also comprises: forward error correction block 65, be used for according to forward error correction coding, the data message is carried out verification and error correction, if the verification succeeds of data message or error correction success, then the trigger data message is preserved module 64 and is preserved data message, otherwise, the verification of trigger data unit and correction module 62.
From above description, as can be seen, the present invention has realized following technique effect: taken full advantage of redundancy and the error correction of CRC check sign indicating number in the communication system, in the process of data message transmission, need to have reduced under the situation of automatic request retransmission the number of times that retransmits, improved the bandwidth availability ratio of communication system, and reduced the error rate of communication system, improved the performance of system.
Obviously, those skilled in the art should be understood that, above-mentioned each module of the present invention or each step can realize with the general calculation device, they can concentrate on the single calculation element, perhaps be distributed on the network that a plurality of calculation elements form, alternatively, they can be realized with the executable program code of calculation element, thereby, they can be stored in the storage device and be carried out by calculation element, and in some cases, can carry out step shown or that describe with the order that is different from herein, perhaps they are made into each integrated circuit modules respectively, perhaps a plurality of modules in them or step are made into the single integrated circuit module and realize.Like this, the present invention is not restricted to any specific hardware and software combination.
The above is the preferred embodiments of the present invention only, is not limited to the present invention, and for a person skilled in the art, the present invention can have various changes and variation.Within the spirit and principles in the present invention all, any modification of doing, be equal to replacement, improvement etc., all should be included within protection scope of the present invention.