[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[HLL] Why the proposed async protocol won't work



Status: RO
Content-Length: 2489
Lines: 44

Hi to all Harmless Little People,

First, let me tell you that I like your project. I am hopelessly
overcommited, so I won't be able to provide you with as much support as I
would like to. I apologize in advance for not being able to address all
the issues brought up in a timely fashion.

The key to good sounding digital telephony is not bandwidth, as many
people think. The key is low, and especially constant, latency. It really
doesn't matter if you have a 14.4 modem, a T1, or a T3. Latency matters,
bandwidth beyond the minimum required to pass the data generated by a
decent vocoder, doesn't.

The protocol proposed by Volker assumes that you get 14400 bps out of your
V.32 modem link. This is not the case unless you also turn on V.42.
Without V.42, the modem will send one start and one stop bit for each byte
of data. Consequently, you need 10 bits per byte, leading to a loss of 20%
of your bandwidth. The effective bandwidth of a 14.4 modem without V.42 is
14400 bps/(10 bits/8 bits payload transmitted) = 11200 bps. Which is not
enough to fit the 13000 bps data stream generated by a GSM full rate
vocoder. You got exactly 11200 bps/(8 bits/byte)/(1000 ms/20 ms/frame) =
28 bytes per frame. At a minimum, the GSM vocoder needs 32.5 bytes per
frame. Any way you slice it, the data won't fit.

Why not just turn on V.42 error correction recover the two bit per byte?
You can't use link error correction and still expect decent voice. As line
noise affects the integrity of the data, V.42 will automatically cause the
retransmision of corrupted data, up to the limits of the buffer in the
modem. Given the standard 2k buffer in a modem, you will see latencies as
high as 2048 bytes/(36 bytes/frame)*(20ms/frame) =  over 1 second latency.
That's unsuitable for voice. [Sidebar: this is the reason why Internet
telephony software uses UDP and not TCP. Using the retransmitting TCP
would drive latencies skyhigh, making communication impossible].

The obvious solution to these problems is to use a lower rate vocoder. GSM
half rate sounds rather shitty. I might be able to get you access to the
CDMA vocoder, which at 7200-7300 bps sounds as good as GSM full rate. I am
working on it at the moment. No promises, since this is commercial
technology resulting from years of research.

Have fun,

-- Lucky Green <shamrock@cypherpunks.to> PGP v5 encrypted email preferred.
   "Tonga? Where the hell is Tonga? They have Cypherpunks there?"