Path: utzoo!utgpu!news-server.csri.toronto.edu!rpi!usc!cs.utexas.edu!uunet!mcsun!hp4nl!ahds!dick From: dick@ahds.UUCP (Dick Heijne CCS/TS) Newsgroups: comp.dcom.modems Subject: Re: MNP Modems Summary: MNP Keywords: n Message-ID: <1955@ahds.UUCP> Date: 16 Apr 91 10:49:25 GMT References: <11611@jarthur.Claremont.EDU> <1991Apr9.130813.8840@news.nd.edu> <3B3_BDF@cs.widener.edu> Organization: Ahold NV, Zaandam, Netherlands, EEC Lines: 40 In article <3B3_BDF@cs.widener.edu>, brendan@cs.widener.edu (Brendan Kehoe) writes: > In <13472@ucrmath.ucr.edu>, bruce@watnxt2.ucr.edu writes: > >On that subject, does anyone know how those error-correcting modems work? > > you just leaped into the comp.dcom.modems realm of expertise. > Brief summary: MNP (Microcom Networking Protocol) transfers an asynchronous datastream into a synchronous datastream by removing the start- and stopbit. This leaves only the eight databits, thus reducing the amount of bits by 20%. MNP adds about 3% on overhead data. I don't know about class 1 and 2 (as far as I know they are hardly used anymore). Class 3 is bit-oriented and has an effectivity of about 108%. Each packet has an 16-bit CRC number added to each packet. A disagreement in the CRC causes (within limits) retransmission of data. Since the packets are numbered, buffering is no problem. This is often needed for interspeeding. If retransmission is needed, the retransmission starts with the packet BEFORE the offending packet, and all packets since the disagreed packet are retransmitted (this mechanism is known as the 'go-back-n' error-correction method, where 'n' is the number of the wrong block. Class 4 only generates larger packets, thus reducing overhead and increasing the effectivity to about 122%. Class 5 is a Class 4 with datacompression added to it. The effectivity is thereby increased to 160-200%. The used technique is known as Adaptive Frequency Encoding, where the 8 bits are converted into characters of at least 4 bits. The used compression method is known as Run-Length Encoding which will send a character, that is repeated more than three times as a single numbered code; next there are two ways of follow-up: if more than three occurences of the same characters are found after another, this compression takes place. The second one is based on Dynamic Tabulation of repeating characters: the table is updated by the frequency of self-repeating characters. The latter technique is in favor, since the table is updated real-time during transfer. If you want more, read about it! Hope this brief explanation has confused you forever :-)) Dick.