This application is a continuation of International Application No. PCT/CN2008/070672, filed on Apr. 3, 2008, which claims the benefit of Chinese Patent Application No. 200710117687.7, filed on Jun. 21, 2007, both of which are hereby incorporated by reference in their entireties.
The present invention relates to network communication technologies, and in particular, to a sending method, a receiving method, a sending apparatus, and a receiving apparatus for implementing service data recovery, and to a channel protection method and a channel protection system.
In the communication technologies, in order to provide stable and reliable end-to-end communication services, the reliability of the communication channel needs to be improved, and the fault rate of the communication channel needs to be reduced. However, many inevitable interference factors exist in the actual communication environment, for example, fiber cut, too high optical loss, and optical signal interference in the optical communication, which bring minor errors, major errors and even failure of the communication channel. Therefore, an important concern in modern communication technology is how to reduce or avoid impact exerted by various interference factors onto the communication channel.
In the existing end-to-end communication service, the following two methods are applied to avoid or reduce impact exerted by interference onto the communication channel, improve the reliability of the communication channel, and reduce the fault rate.
Data link Forward Error Correction (FEC) coding is performed. Redundancy transcoding is performed beforehand for the service information that needs to be transmitted, and errors are corrected by adding extra information bandwidth. For example, the 64/66B coding in the LOGE and the FEC in the Optical Transport Network (OTN) are data channel-associated FEC.
In the process of developing the present invention, the inventor finds that the first method involves at least these problems: Minor errors of the communication channel can be detected and corrected, but the communication service cannot be recovered when the communication channel fails or suffers major errors.
An extra protection channel is provided. When the working channel is detected as faulty, the service is switched onto the protection channel. In the process of developing the present invention, the inventor finds that the second method involves at least these problems: The service is unable to be switched onto the protection channel when the working channel fails, and to recover from the fault as soon as possible. However, the protection is performed only after the fault is detected, and the transient interruption of the service is not avoided. Besides, in order to prevent frequent misoperations, the service switching is generally delayed for a certain time and is not started until the quality deterioration of the communication channel reaches a specific extent. Consequently, no effective protection is provided for minor errors.
In the first aspect, a sending method and a receiving method for implementing service data recovery are disclosed in an embodiment of the present invention to implement service data recovery in the case of minor errors, major errors and channel failure.
In the second aspect, a sending apparatus and a receiving apparatus for implementing service data recovery are disclosed in an embodiment of the present invention to implement service data recovery in the case of minor errors, major errors and channel failure.
In the third aspect, a method and a system of channel protection are disclosed in an embodiment of the present invention to enable service recovery in the case of minor errors, major errors and channel failure and implement protection in the case of failure of multiple channels.
In order to fulfill the first aspect of the present invention, a sending method for implementing service data recovery in an embodiment of the present invention is provided, and the method is as follows:
performing in-band redundancy coding for service information of each service channel;
using at least one out-band channel as a protection channel; and
sending the information of the service channel after the in-band redundancy coding, where the in-band redundancy coding is adapted for data recovery of in-band correctible errors of the service channel or for detecting non-correctible errors or channel failure generated by the service channel, and the protection channel is adapted to recover correct data of the service channel that fails or generates non-correctible errors.
A receiving method for implementing service data recovery in an embodiment of the present invention includes:
receiving information from a service channel and/or a protection channel, and performing data check for the received information;
performing error correction for the information received by the service channel through in-band redundancy coding of the service channel when the service channel generates random or correctible errors, and recovering correct data information; and
recovering correct data information of the service channel through a protection channel when the service channel fails or generates non-correctible errors.
In the sending method and receiving method for implementing service data recovery above, in-band redundancy coding is performed for each service channel, and a protection channel is added. Therefore, minor errors are corrected through the in-band redundancy inside each service channel; and, if non-correctible errors occur in the case of major errors or channel failure, data recovery is performed through the protection channel for the service channel that generates major errors or channel failure. In this way, lossless sending and receiving of services are implemented for the scenarios of minor errors, major errors and channel failure.
In order to fulfill the second aspect of the present invention, a sending apparatus for implementing service data recovery in an embodiment of the present invention includes:
a first module, adapted to perform in-band redundancy coding for service information of each service channel;
a second module, adapted to use at least one out-band channel as a protection channel;
a third module, adapted to send the information of the service channel after the in-band redundancy coding, where the in-band redundancy coding is used for data recovery of in-band correctible errors of the service channel or for detecting non-correctible errors or channel failure generated by the service channel; and
the protection channel, adapted to recover correct data of the service channel that fails or generates non-correctible errors.
A receiving apparatus for implementing service data recovery in an embodiment of the present invention includes:
a first unit, adapted to: receive information from a service channel and/or a protection channel, and perform data check for the received information; and
a second unit, adapted to: perform data recovery for correctible error information of the service channel through in-band redundancy coding of the service channel, and recover, through a protection channel, correct service information of the service channel that fails or generates non-correctible errors.
In the sending apparatus and the receiving apparatus for implementing service data recovery described above, through the in-band redundancy coding of the service channel, data recovery is performed for correctible errors of each service channel, or non-correctible errors or channel failure is detected; and through the protection channel, data recovery is performed for the service channel that fails or generates non-correctible errors.
In order to fulfill the third aspect of the present invention, a channel protection method in an embodiment of the present invention includes:
performing in-band redundancy coding for each service channel that transmits service information;
using at least one out-band channel as a protection channel;
performing error correction for the service channel through in-band redundancy coding of the service channel when the service channel generates random or correctible errors, and
recovering correct data information; and recovering correct data of the service channel through a protection channel when the service channel fails or generates non-correctible errors.
A channel protection system in an embodiment of the present invention includes the sending apparatus, the receiving apparatus, and at least one protection channel described above. The protection channel is a redundancy check channel and/or an idle protection channel. The redundancy check channel is a protection channel generated after hybrid redundancy coding is performed for the service information of all service channels. The idle protection channel is a protection channel that serves as a substitute when the service channel fails or generates non-correctible errors.
In the embodiments of the present invention, service information is transmitted by using in-band redundancy error correction and protection channels; lossless transmission of services is implemented in the case of minor errors, major errors and channel failure; transient interruption of services inevitable in the prior art is avoided herein; the inability of protection against both minor errors and major errors in the prior art is overcome; and the reliability of communication networks and equipment is improved greatly. Moreover, the present invention does not impose special limitation on quantity of protection channels, and is capable of protecting both minor and major systems flexibly.
The technical solution under the present invention is detailed below by reference to accompanying drawings and preferred embodiments.
It is thus evident that neither of the two solutions in the prior art is capable of recovering the communication service in the case that minor errors, major errors and channel failure occur at the same time. The following embodiments of the present invention provide the solution to lossless sending and receiving of services in the case of minor errors, major errors and channel failure.
The present invention comes in many embodiments. The technical solution under the present invention is exemplified below by reference to accompanying
As shown in
Type One: The protection channel P is an idle protection channel.
In-band redundancy coding such as Forward Error Correction (FEC) coding, Cyclic Redundancy Coding (CRC) and parity check is performed inside the four service channels A, B, C and D. Redundant codes are added into the service data A, B, C and D of each service channel, and then the data are transmitted over channels A, B, C and D.
Two types of errors may occur in the transmission process. When correctible errors (such as random minor errors and correctible continuous errors) occur on a service channel, the errors are corrected through in-band redundancy coding inside the service channel. When non-correctible errors (such as non-correctible continuous errors and channel failure) occur on the service channel, the in-band redundancy coding is unable to correct the errors. In this case, the sink detects the failure alarm information of this channel, and returns the failure alarm information to the source. The source backs up the service data information of the channel to the protection channel P. In this way, the protection channel P replaces the service channel. At non-service data time, the protection channel is connected to the receiving port of the service channel of the sink. After the service channel that generates the errors or channel failure recovers to normal, the protection channel is replaced by the recovered service channel at non-service data time, thus accomplishing data recovery of the service channel.
Type Two: The protection channel P is a redundancy check channel.
The method and the system of sending, receiving and channel protection in the case that the protection channel P is a redundancy check channel are described below by reference to
A. Source: The data of four service channels are denoted by parts A, B, C and D of
The first type of redundancy conversion is: Hybrid redundancy coding is performed for the service data of all service channels to generate an out-band redundancy check channel P, as shown in part P of
The second type of redundancy conversion is: In-band redundancy coding is performed within all service channels A, B, C and D and the protection channel P. Parity check is performed for all service channels A, B, C and D and the redundancy check protection channel P by rows or columns to generate in-band redundant codes A21 . . . A28/B21 . . . B28/C21 . . . C28/D21 . . . D28/P21 . . . P28. In
Two types of errors may occur in the transmission process. Correctible errors (such as random minor errors and correctible continuous errors) that occur in the transmission process are corrected through the in-band redundancy coding of the service channel or protection channel. As shown in
B. Sink: In the case that non-correctible errors (such as non-correctible continuous errors or channel failure) occur on the service channel in the transmission process, the in-band redundancy coding is unable to correct the errors. In this case, the sink corrects the errors on the service channel through the protection channel P and the in-band redundancy coding of the service channel. In this way, the correct data information of the service channel is recovered. As shown in
The protection channel under the present invention may be an extra idle channel to perform channel replacement and service information backup when a service channel fails or suffers non-correctible errors, or may be an additional redundancy check channel generated after hybrid redundancy coding is performed for the service information of all service channels. When the service channel fails or suffers from non-correctible errors, data recovery may be performed for the service channel that generates errors through the redundancy check channel, thus accomplishing lossless protection in the case of channel failure. After the service channel that fails or generates errors is recovered to normal, the service data is transmitted through the recovered service channel.
During normal working of the channel, in-band redundancy coding is performed for the service data A, B, C and D, and a redundancy check channel P is generated. The other protection channel BK is idle. As shown in
Supposing that channel D fails at a moment, the sink recovers the service data A, B, C and D through redundancy error correction of A, B, C, D and P. As shown in
After detecting failure of channel D, the sink sends the failure alarm information to the source. The source switches the data on channel D to the idle protection channel BK. As shown in
As shown in
Data recovery after recovery of channel D: Supposing that channel D recovers later, the sink switches the data at the receiving port of channel BK back to channel D at the non-service data time, as shown in
After receiving the information about recovery of channel D, the source switches the data on the idle protection channel BK to channel C. After receiving the data and determining the data as a service of channel C, the sink switches the data on channel BK to the port of channel C of the sink, whereupon another channel failure is tolerable under lossless protection.
The foregoing embodiments describe the mode of lossless recovery for the service channel in the case of minor errors, major errors and one failed channel, supposing that there are four service channels and one protection channel, and describe the mode of lossless recovery for the service channel in the case of minor errors, major errors and two channels which fail consecutively, supposing that there are four service channels and two protection channels. It is thus evident that the embodiments of the present invention can also implement protection when multiple service channels fail simultaneously. For example, if there are n protection channels, including 1 redundancy check channel, n−1 idle protection channels (n is an integer greater than 2), and Q service channels (Q)m, when m service channels (m is an integer greater than 1) fail or generate non-correctible errors simultaneously, the data recovery performed for the service channels through the protection channels includes the following steps:
If m<n, the m service channels that fail or generate non-correctible errors are replaced by m idle protection channels, and the service data information of the failed channels is transmitted through the substitute idle protection channels.
If m=n, the m−1 service channels that fail or generate non-correctible errors are replaced by m−1 idle protection channels. Data recovery is performed for the remaining failed service channel through the hybrid redundancy coding of the redundancy check channel, the data information of m−1 service channels backed up by m−1 idle protection channels, and the information of Q-m service channels with correctible errors.
Under the same conditions: there are n protection channels, including 1 redundancy check channel, n−1 idle protection channels (n is an integer greater than 2) and Q service channels (Q)m, when m service channels (m is an integer greater than 1) fail or generate non-correctible errors simultaneously, the lossless data recovery performed for the service channels through the protection channels includes the following steps:
If m<n, the m service channels that fail or generate non-correctible errors consecutively are replaced by the idle protection channels consecutively. During the replacement, lossless data recovery is performed for the service channels replaced by the idle protection channels through the redundancy check channel and the correct data information of the service channels that generate correctible errors.
If m=n, the m−1 service channels that fail or generate non-correctible errors are replaced by the idle protection channels consecutively. During the replacement, lossless data recovery is performed for a service channel which fails or generates non-correctible errors and is not replaced by an idle protection channel through the hybrid redundancy coding of the redundancy check channel, the data information of service channels backed up by the idle protection channels, and the correct data information of service channels with correctible errors.
In practice, the service channels usually fail consecutively, and it is little possible that two or more service channels fail simultaneously. Therefore, the solution to two or more service channels which fail simultaneously is applied in a narrow scope, and is not exemplified here.
It is understandable to those skilled in the art that if higher equipment reliability is expected, the recovery of multiple failed channels may be performed by adding more protection channels, and the foregoing embodiments may have diversified variations. The protection scope of the present invention covers all the ideas about sending and receiving service information and/or performing error correction through in-band redundancy coding for the service channel and through adding at least one protection channel.
In the embodiments of the present invention, service information is transmitted by using in-band redundancy error correction and protection channels; lossless transmission of services is implemented in the case of minor errors, major errors and channel failure; transient interruption of services inevitable in the prior art is avoided herein; the inability of protection against both minor errors and major errors in the prior art is overcome; and the reliability of communication networks and equipment is improved greatly. Moreover, the present invention does not impose special limitation on quantity of protection channels, but implements multiple sending, receiving and protection modes such as 1+1, m+1, m+n, and Q+n, implements lossless protection in the case that multiple channels fail consecutively, and implements flexible protection for minor and major systems.
It is understandable to those skilled in the art that all or part of the steps of the foregoing embodiments may be implemented through hardware instructed by a program or through hardware solely. When they are implemented by hardware instructed by a program, the program may be stored in a computer-readable storage medium. When being executed, the program includes the following steps:
performing in-band redundancy coding for service information of each service channel;
using at least one out-band channel as a protection channel; and
sending the information of the service channel after the in-band redundancy coding.
Alternatively, the program includes the following steps:
receiving information from a service channel and a protection channel, and performing code check for the received information;
performing error correction for the received information through in-band redundancy coding of the service channel when the service channel generates random or correctible errors;
recovering correct data information; and
recovering correct data information of the service channel through a protection channel when the service channel fails or generates non-correctible errors.
If the protection channel is a redundancy check channel, the recovering of the correct data information of the service channel through a protection channel when the service channel fails or generates the non-correctible errors is:
detecting the non-correctible errors or failure of the service channel through the in-band redundancy coding for the service channel;
correcting errors of the service channel through the received hybrid redundant codes of the redundancy check channel and the information of the service channel with correctible errors; and
recovering the correct data information of the service channel.
If the protection channel is an idle protection channel, the recovering of the correct data information of the service channel through a protection channel when the service channel fails or generates the non-correctible errors is:
detecting the non-correctible errors or failure of the service channel through the in-band redundancy coding for the service channel, receiving the information of the service channel backed up in the idle protection channel, and recovering correct data information of the service channel; and
performing, if the quantity of service channels which fail or generate the non-correctible errors is greater than the quantity of idle protection channels, error correction for the service channels that fail or generate the non-correctible errors and are not replaced by the idle protection channels through the received hybrid redundancy codes of the redundancy check channel, the service information of service channels backed up by the idle protection channels, and the information of the service channel with correctible errors, and recovering the correct data information of service channels that fail or generate the non-correctible errors and are not replaced by the idle protection channels.
Alternatively, the program includes the following steps:
performing in-band redundancy coding for each service channel that transmits service information;
using at least one out-band channel as a protection channel;
performing error correction for the service channel through in-band redundancy coding when the service channel generates random or correctible errors; and
correcting errors of the service channel through a protection channel when the service channel fails or generates non-correctible errors.
The program further includes:
performing hybrid redundancy coding for the service information of all service channels, and generating an out-band redundancy check channel as a protection channel.
The correcting of errors of the service channel through a protection channel when the service channel fails or generates non-correctible errors includes:
performing error correction for the service channel through the hybrid redundancy coding of the redundancy check channel and the information of the service channel with correctible errors.
It is understandable to those skilled in the art that all or part of the steps of the foregoing embodiments may be implemented by hardware instructed by a program. The program may be stored in a computer-readable storage medium. When being executed, the program performs the steps that cover the foregoing method embodiments. The storage medium may be any medium capable of storing program codes, for example, Read-Only Memory (ROM), Random Access Memory (RAM), magnetic disk, and compact disk.
A computer-readable storage medium is disclosed herein. The storage medium includes computer program codes which are executed by a computer processor and trigger the computer processor to perform the following steps:
performing in-band redundancy coding for service information of each service channel;
using at least one out-band channel as a protection channel; and
sending the information of the service channel after the in-band redundancy coding, where the in-band redundancy coding is used for data recovery of in-band correctible errors of the service channel or for detecting non-correctible errors or channel failure generated by the service channel, and the protection channel is adapted to recover correct data of the service channel that fails or generates non-correctible errors.
Another computer-readable storage medium is disclosed herein. The storage medium includes computer program codes which are executed by a computer processor and trigger the computer processor to perform the following steps:
receiving information from a service channel and/or a protection channel, and
performing data check for the received information;
performing error correction for the information received by the service channel through in-band redundancy coding of the service channel when the service channel generates random or correctible errors, and recovering correct data information; and
recovering correct data information of the service channel through a protection channel when the service channel fails or generates non-correctible errors.
Another computer-readable storage medium is disclosed herein. The storage medium includes computer program codes which are executed by a computer processor and trigger the computer processor to perform the following steps:
performing in-band redundancy coding for each service channel that transmits service information;
using at least one out-band channel as a protection channel; performing error correction for the service channel through in-band redundancy coding of the service channel when the service channel generates random or correctible errors, and
recovering correct data information; and
recovering correct data of the service channel through a protection channel when the service channel fails or generates non-correctible errors.
Although the invention is described through some exemplary embodiments, the invention is not limited to such embodiments. It is apparent that those skilled in the art can make various modifications and variations to the invention without departing from the spirit and scope of the invention. The invention is intended to cover the modifications and variations provided that they fall in the scope of protection defined by the following claims or their equivalents.
Number | Date | Country | Kind |
---|---|---|---|
200710117687.7 | Jun 2007 | CN | national |
Number | Date | Country | |
---|---|---|---|
Parent | PCT/CN2008/070672 | Apr 2008 | US |
Child | 12632502 | US |