TerminatingT38 includes Commetrex’ acclaimed T.30 fax-protocol engine (PortableT.30)™, and the necessary elements of T.38 fax used in typical gateway applications (PowerRelay)™ TerminatingT38 may be licensed separately for a fee lower than the sum for PortableT30 and PowerRelay.
System Overview
The diagram above shows the typical real-time fax relay. Note that PSTN-connected fax terminals are at each terminus of the fax session. Each fax terminal hosts either the calling or answering portions of the T.30 protocol. If one of the terminals is removed, its portion of T.30 must be replaced by terminating T.38 fax technology.
In a gateway, the T.38 fax protocol engine implements the algorithm controlling the sequencing of modems and the transfer of signals across the data link. It also implements the protocol “spoofing” required to handle the delay of the IP network. Spoofing refers to the logic implemented in the fax relay components that ‘fools’ the transmitting and receiving fax terminals into, for example, padding image lines or re-transmitting a message to render network delays transparent.
But for a T.38 fax that is not required to spoof legacy terminals and, instead, terminate (or originate) faxes into a co-located T.30 protocol engine, much of the typical T.38 fax engine is superfluous and is eliminated to reduce resource consumption.
The diagram below shows the same connection with one PSTN terminating fax terminal, but the terminal at the opposite end of the session has been replaced with TerminatingT38. It is helpful to think of the T.38 fax protocol engine as replacing analog fax modems in a PSTN terminating-fax application. The rest is the same: T.30 protocol engine, image-conversions, and API for the fax application.
Interfacing
TerminatingT38 is comprised of Commetrex’ PortableT30 integrated with a special version of T.38 fax. The T.38 fax recommendation is transport non-specific, so the packet interface point with T.38 fax is simply a way to transfer T.38 fax payload packets, as specified in T.38 fax. This is a simple asynchronous buffer-passing interface. It is the responsibility of the implementor to interface this point with the IP transport. Note that jitter-buffer management is handled in the T.38 fax module.
Just as interfacing with the analog modems in a terminating PSTN application is less complex than interfacing with T.30, so too is interfacing with TerminatingT38 mainly a matter of interfacing with PortableT30, which is part of the package.
PortableT30 has several interface points, such as file I/O, image conversions, font conversions, timer package, and event pre-processor. The implementor also has the option of substituting his own application interface. The package includes a generic, yet comprehensive API, which may be used as is, extended, or substituted.
System Implementation Example
Commetrex offers TerminatingT38 in combination with terminating PSTN fax on its Open Telecommunications Framework® OTF Kernel middleware product and MSP PCM Interface Boards. The S.100 Fax System Service API is offered with extensions to accommodate the application’s choice of PSTN or IP transport. H.323 is included for call control when establishing IP connections. Other call-control standards, such as SIP, can be easily substituted.
As the OTF Kernel does not include media-processing resources, they are added through the OTF Resource Service Manager SDK. The SDK includes an OTF Call Control Agent template, making the addition of H.323 straightforward.
Commetrex uses its OpenMedia™ MSP Consortium M.100-conforming media-processing software framework to host TerminatingT38 and related fax technologies,as shown in figure 4 below.
The major entities of an OpenMedia implementation of PSTN terminating fax are shown in figure 3. The MSP Application interfaces with the client through the S.100 fax API and might host the T.30 protocol machine. (T.30 could be embedded and configured as a stream-processing entity (or an OpenMedia Media Stream Transform (MST).)
There are two OpenMedia entities used to interface with external entities (see figure 4): The File Stream Server uses the OTF Container Manager’s Data Object Manager to interface with spatial-media storage. The Packet Stream Server exposes a buffer-passing interface to the H.323 Call Control Agent. For PSTN fax, analog fax modems replace the T.38 fax module, and a PCM Stream Server replaces the Packet Stream Server, as shown in figure 3. For clarity, the figures exclude control connections, the OTF Transport, and other details.
Note that OpenMedia makes no assumption as to the location of each of the entities shown in the diagrams. Many implementations will include three different types of processors that can host these entities: a DSP, an embedded scalar or network processor, and a system-level or host processor.
The fax MSP Application is logically part of an Resource Service Manager (RSM). It can either be incorporated into an RSM process or can be a separate process under control of the RSM.
Call control is accomplished, for example, by adding H.323 or SIP for T.38 fax or the PSTN Call Control Agent (CCA) required by the PSTN network interface. A single RSM can implement both, in which case the fax MSP Application could be incorporated into the RSM. Separate CCAs in separate RSMs could be implemented, in which case the fax resource might be a separate process and OTF-addressable entity.
Figure 5 shows the TerminatingT38 system resource/service integrated with an H.323 Call Control Agent. The diagram for the PSTN version has a similar architecture. Those portions of the OTF Kernel included in the diagram are enclosed by the dashed line.
FoIP Interoperability
Commetrex has led the industry effort for T.38 interoperability since January 2002, when it launched the T.38 Interoperability Test Lab. Recently, Commetrex has done extensive interoperability testing with the BladeWare HMP telephony platform, with international carriers, service providers, and enterprises.
Related Publications
- T.38 Fax Relay Product Bulletin
- Multi-Modal Terminating Fax Product Bulletin
- BladeWare Product Bulletin