Often, it is necessary to send data files back and forth for communication network testing purposes. Communication networks must be evaluated on a continuous basis to insure high quality voice/video service. In order to continuously assess the voice/video quality between two locations, bi-direction continuous file transfer (i.e. file playing at one location and file recording at the other location) is carried out. In practice, the evaluation is executed by transmitting a data file (usually a speech/video speech sample) to the communication network under test by a first test device. This sample is received and recorded at a second test device. An uplink (from the first test device to the second test device) quality score is derived based upon any degradation of the sample between the original and the recorded sample. A downlink quality score (from the second test device back to the first test device) can be obtained using the same procedure in reverse. This procedure using round-trip samples is repeated periodically.
In order for bi-directional testing to work properly, synchronization is necessary between each file-play-record (FPR) instance in order to record the degraded file correctly and completely. If synchronization is not performed on each cycle, the accumulated time-shift during the testing cycles will cause the voice/video quality test (VQT) to be out of phase and the recorded files will be corrupted. However, synchronization between file-play-record (FPR) cycles consumes a lot of time, (sometimes on the order of 20-30 seconds) as compared to the length of the sample file itself which may only be 8-10 seconds. In addition to the time problem, the synchronization procedure hangs up from time to time, especially on mobile phone drive tests, and thus is unreliable.
In one embodiment systems and methods are utilized that eliminate synchronization between cycles of a repetitive communication network quality test. This is accomplished by time-shifting each sample transmission to compensate for the time shift due to communication network delay and asymmetrical operation of network testers. In one embodiment, a dual-tone multi-frequency (DTMF) stamped sample signal is used to obtain an accounting of the time-shift that is necessary for each cycle. Once the necessary time-shift is determined, a time-shift alignment calibration (TSAC) and real-time auto-TSAC is used to implement continuous voice/video quality evaluations.
For a more complete understanding of the present invention, reference is now made to the following descriptions taken in conjunction with the accompanying drawing, in which:
As discussed above, when communication networks are to be evaluated on a continuous basis to insure a high quality of service, it is necessary to perform continuous bi-directional file transfers between locations. For such a system to work properly, synchronization is necessary between each file-play-record (FPR) instance in order to record the degraded file correctly and completely. In practice, the voice/video quality evaluation is executed by transmitting a file, such as a speech/video speech sample, from tester 11 over communication network 15 to second tester 12. The sample is received and recorded at the second tester. An uplink (13) quality score is derived based upon the degradation of the sample between the original and the recorded sample. A downlink (14) quality score can be obtained using the same procedure in reverse.
As shown in
Uplink 2 (cycle 2) begins with processes 209 and 210 again performing a sync operation. Uplink 2 then continues with process 211 sending file A (this is the file that was received in cycle 1 from tester 12) uplink from tester 11 to process 212 for recording at tester 12 as file A3. Processes 214 and 213 perform another sync operation and then file A (the recorded A3 file) is sent via process 216 (tester 12) to process 215 (tester 11) while the file becomes file A4 thereby completing cycle 2. Note that had the synchronizations not been performed, the signal sample transmitted bi-directionally across the network would have become time-shifted and the comparison between a known signal and the received signal would yield an improper analysis.
As a first step the elimination of the synchronization operation it is important to accurately determine the time-shift of a sample signal. One embodiment to accomplish this function is to use dual-tone multi-frequency (DTMF) signal markers (stamps) to define the sample signal. An example is shown in
Thus, as shown in
Because DTMF stamped sample signal 34 has stamps 32, 33 at the beginning and end of the original signal, the time-shift during FPR can be calculated accurately by detecting the time-shift of the DTMF stamp signals.
DTMF stamps were used because their generation and detection are now so very well known and there are many practical algorithms, such as the FFT method or the filter bank method which can be used to accurately detect the presence of the signal stamps.
It is reasonable to assume that Tp1, Tr1, Tp2, Tr2 are different because of the different tester devices. However, it is also reasonable to assume that they are constant or almost constant (i.e. with small variance) values between test cycles.
As shown in
Because Tp1≠Tp2, Tr1≠Tr2 due to assumed asymmetrical operation of tasklists for testers 11 and 12, then 2 T+Tp1+Tr1≠2 T+Tr2+2 Tp2. This means that the starting point of each cycle is different and that the time-shift at the ith cycle is Δ Ti=(i−1)×((Tp1+Tr1)−(Tr2+Tp2)).
Now suppose 2 T+Tp1+Tr1>2 T+Tr2+Tp2 and suppose inversely. Such assumptions will not affect final results.
From the above time-shift expression it is clear (as discussed above) that using CPFR without synchronization the time-shift Δ Ti must be removed, otherwise the wrong file will be recorded due to bigger and bigger time-shifts.
In order to remove Δ Ti, the time alignment problem for each cycle is considered. That is, let every test cycle be the same length, and thus, the next cycle will start at the same time point.
Because it is supposed 2 T+Tp1+Tr1>2 T+Tr2+Tp2 and Δ T=(Tp1+Tr1)−(Tr2+Tp2), then if tester 12 is forced to execute its tasklist for a period of Δ T seconds more, then 2 T+Tp1+Tr1=2 T+Tp2+Tp2+Δ T. This then implies that tester 11 and tester 12 complete their respective testing cycles at the same time. If this is so, then testers 11 and 12 will start their next testing cycle at the same time.
Now let us address the issue of forcing tester 12 to execute its tasklist for a period of Δ T seconds longer than tester 11. Referring again to
Next we will address how to calculate the time-shift Δ T that is to be added as silence to the speech sample file. The only information that is available to calculate Δ T is the recorded files A1, A2, A3, A4, etc.
For recorded file A1 (process 404) the play and record starts at the same time after the synchronization operation. However, considering the network delay Td, the recorded file A1 is recorded as shown in
Note that in process 406 and process 410 although the played file's name is A1 in both, the A1 s may be different in different cycles because the added silence time may be different depending on the detected variant time shift. In other words, the new file A1 generated with TSAC will replace the old file A1, in order to correct for the time shift in this cycle.
From
For recorded file A2 (process 405) or whether playing stars first at tester 12 (process 406) these cases are:
T+Tp1>T+Tr2+Td (1)
T+Tp1=T+Tr2+Td (2)
T+Tp1<T+Tr2+Td (3)
In order to simplify the discussion, we will only discuss case (1). That is, suppose tester 11 consumes more time than does tester 12. For case (1),
Δ T2=(T+Tp1)−(T+Tr2+Td)=Tp1−Tr2−Td here we also assume Tdtmf1>Δ T2, i.e., the stamp signal is longer than the time-shift. This is shown in
For recorded file A3 (process 408) which is uplink 2 there are three cases depending on whether recording starts first at tester 12 (process 408) or whether playing starting first at tester 11, process 407. These cases are:
2 T+Tp1+Tr+Td>2 T+Tr2+Tp2 (1)
2 T+Tp1+Tr1+Td=2 T+Tr2+Tp2 (2)
2 T+Tp1+Tr1+Td<2 T+Tr2+Tp2 (3)
As above, in order to simplify the discussion, we will only discuss case (1). That is, assume tester 11 consumes more time than does tester 12. For case (1),
Δ T3=(2 T+Tp1+Tr1+Td)−(2 T+Tr2+Td)=Tp1+Tr1+Td−Tr2−Tp2 here we also assume Tdtmf1>Δ T3, i.e., the stamp signal is longer than the time-shift. Again, Δ T3 can be calculated because we have the recorded file A3. This is shown in
For recorded file A4 (process 409) which is downlink 2 there are also three cases depending on whether recording starts first at tester 11 (process 409) or whether playing starts first at tester 12 (process 410). These cases are:
3 T+2 Tp1+Tr1>3 T+2 Tr2+Tp2+Td (1)
3 T+2 Tp1+Tr1=3 T+2 Tr2+Tp2+Td (2)
3 T+2 Tp1+Tr1<3 T+2 Tr2+Tp2+Td (3)
As above, in order to simplify the discussion, we will only discuss case (1). That is, suppose tester 11 consumes more time than does tester 12. For case (1),
Δ T4=(3 T+2 Tp1+Tr1)−(3 T+2 Tr2+Tp2+Td)=2 Tp1+Tr1−Td−2 Tr2−Tp2 here we also assume Tdtmf1>Δ T4, i.e., the stamp signal is longer than the time-shift. Again, Δ T4 can be obtained because we have the recorded file A4. This is shown in
From the above analysis of the recorded files, it is clear that the time-shift Δ T=Δ T4−Δ T2. Δ T can be calculated since Δ T=Δ T3−Td. Thus, from these two formulas, the compensation time Δ T can be derived from the recorded files. Δ T4, Δ T2, Δ T3, Td are calculated with the help of the stamp signal in the recorded speech files, as discussed above. After these values are calculated the value of Δ T can be calculated in order to achieve the time alignment after each cycle of testing.
From these formulas, it can be seen that the calculation of Δ T also depends on the time delay of the telecommunication network under test. If the network time delay changes, Δ T will also change. In order to solve this problem, real-time time-shift monitoring techniques can be used, as discussed below.
The compensation time Δ T can be divided into two parts to eliminate the time-shift of recorded file A2 as well as to achieve the time alignment. That is, in order to generate file A1 from file A.
(a) Add Δ T2 seconds length of silence to the beginning of the stamped original speech file A.
(b) Add Δ T4−2 Δ T2 seconds length of silence to the end of the original stamped speech file A.
Step (a) is used to let tester 12 (process 406) play the speech file a little later such that tester 11 will have enough time to start recording (process 405). Step (b) is used to compensate for the rest of the time-shift.
As previously discussed, and as shown in uplink 1 (
The implementation of the continuous FPR includes two parts as shown in
Process 1001 is the initial TSAC and is performed before the formal voice/video quality testing. The main purpose, as discussed above, is to obtain time-shift Δ T so as to be in a position to generate the compensated stamped speech file A1.
Process 1101 executes pretesting to obtain Δ T which represents the time-shift due to both tester devices and network delay. As discussed above, the tester's introduce most of the time-shift delay because the network delay should be less than 500 ms for a normal network. Process 1102 saves the recorded files A1, A2, A3, A4. Note that because the time-shift may be quite large, it might be advantageous to move the initial file A to a special file having only the stamp signal. This would be used only for the initial TSAC to determine Δ T accurately. After the initial TSAC, most of the time-shift in CFPR will be removed and the regular test signal can be used.
Process 1103 obtains the time-shift value, as discussed, and process 1104 determines if enough data has been recorded to determine proper compensation. If so, process 1105 generates the compensated file A1 and process 1106 stores that file in tester 12 (process 404,
Process 1002,
During testing, the computed time-shift TA1new of the latest file A1 (process 1204) is compared with the benchmark value TA1 in process 1205. If TA1new deviates from the benchmark value TA1, then Δ TA1=TA1new−TA1 represents the new time-shift arising after TSAC. In this case, the compensated stamped speech file A1 is amended (process 1206) to remove the new time-shift. The amendment is executed by adding or reducing the silence part at the end of file A1. Process 1207 replaces the old file A1 with a new file A1.
Although the present invention and its advantages have been described in detail, it should be understood that various changes, substitutions and alterations can be made herein without departing from the spirit and scope of the invention as defined by the appended claims. Moreover, the scope of the present application is not intended to be limited to the particular embodiments of the process, machine, manufacture, and composition of matter, means, methods and steps described in the specification. As one of ordinary skill in the art will readily appreciate from the disclosure of the present invention, processes, machines, manufacture, compositions of matter, means, methods, or steps, presently existing or later to be developed that perform substantially the same function or achieve substantially the same result as the corresponding embodiments described herein may be utilized according to the present invention. Accordingly, the appended claims are intended to include within their scope such processes, machines, manufacture, compositions of matter, means, methods, or steps.