V.90: the digital modem¶
V.90 is the "56k" modem standard. A V.90 call has two different ends (see the data pumps). This page is about D-Modem as the digital modem: the end that sits on a fully digital phone connection, the role an internet provider's equipment played in the 1990s. D-Modem plays this role on a SIP call or a phone system's channel, so an old modem dialling in can connect at up to 56000 bit/s.
The code is dsp/v90.cpp, on top of the V.34 pump. For how each phase
of the start-up is done, and how it copes with echo and with other
modems' quirks, see the technical details.
What it needs¶
The call must be G.711 all the way (plain digital phone audio, ยต-law or A-law), with nothing on the path that converts or re-encodes the audio. That is what makes 56k possible: D-Modem sends exact digital values, and the phone network turns them into the exact voltages the modem at the other end measures.
How a call goes¶
- The modems agree on V.90 during V.8 (see V.34).
- They measure the line in both directions, as V.34 does.
- The digital modem sends a digital impairment learning sequence. The analogue modem uses it to find out what the phone network does to the digital values: volume changes ("pads"), "robbed bits" on some American trunks, and so on.
- The analogue modem picks the set of values that survive the trip, and the speed.
- Data flows: up to 56000 bit/s down (digital to analogue) and up to 33600 bit/s up (analogue to digital, using V.34).
How well it works¶
In the tests, real modems from other companies connect to D-Modem at 46666 to 54666 bit/s down, depending on the modem (see Interop). Smart Link's original library connects at 54666 down and 31200 up on a simulated line.
See also V.90 analogue modem (the other end), V.92 (the next standard) and V.91 (two digital modems).