Chapter 6. Testing an implementation of T.38

The T.38 specification does not define any specific compliance tests which an implementation must pass. It is not supplied with any test vectors. Commetrex is a supplier of T.38 implementations, who have taken it upon themselves to define a set of tests, and create a lab for T.38 interoperability testing. This seems the closest thing to an industry standard for T.38 testing which exists at this time, and is much to their credit.

Commetrex have defined 16 tests which an implementation T.38 undergoes in their lab. These are described on the Commetrex web site as:

Table 6.1. Commetrex T.38 tests

Test #DirectionTransportImage fileError correctionData rate mgtImage encodingPolling
1originateUDPccitt2p.tifredundancy 0method 2MRno
2originateUDP100page.tifredundancy 0method 2MRno
3originateTCPccitt2p.tifredundancy 0method 1MRno
4originateUDPccitt2p.tifredundancy 3method 2MRno
5originateTCPccitt2p.tifFEC 2 from 3 spanmethod 2MRno
6originateUDPdither1d.tifredundancy 3method 2MRno
7originateUDPccitt2p.tifredundancy 3method 2ECMno
8originate & poll to rxUDPccitt2p.tifredundancy 3method 2MRpolled rx
9answerUDPccitt2p.tifredundancy 0method 2MRno
10answerUDP100page.tifredundancy 0method 2MRno
11answerTCPccitt2p.tifredundancy 0method 1MRno
12answerUDPccitt2p.tifredundancy 3method 2MRno
13answerTCPccitt2p.tifFEC 2 from 3 spanmethod 2MRno
14answerUDPdither1d.tifredundancy 3method 2MRno
15answerUDPccitt2p.tifredundancy 3method 2ECMno
16answer & polled to txUDPccitt2p.tifredundancy 3method 2MRpolled tx

The file dither1d.tif is a whole page of dense checkerboard pattern, which does not compress, and produces a kind of torture test page. It is about 2M bytes. 100page.tif is exactly what it says - a file with 100 pages of FAX images. The content of the pages does not seem to be specified by Commetrex. The ITU T.30 test images, repeated sufficiently, seems a good basis for this test. ccitt2p.tif appears to be page 2 of the ITU test images. The tests are heavily biased towards non-ECM operation with MR coding. No other coding appears to be used, and only 2 tests use error corrected (ECM) FAXing.

Some of the Commetrex tests seem strange. Why is TCP transmission testsed with FEC or redundancy? These things are only needed to overcome to lack of reliability in a UDP path.