V42 önerisiyle MNP protokolünün karşılaştırmalı olarak incelenmesi ve MNP4 protokolünün benzetimi - Bozkurt, Ahmet (Fen Bilimleri Enstitüsü, 1993)
Bilgisayar iletişiminin günümüzde zorunlu bir hal alması bu konuda yapılan ve sunulan çalışmalarında sayısını oldukça arttırmıştır. Bugünün teknolojisinde çok büyük mesafeler almış bilgisayar iletişimi alanında oldukça fazla miktarda standart ve yapı geliştirilmiş ve uygulanmıştır. Bilgisayar Uletişiminde en ucuz yöntemlerden olan mevcut telefon şebekesinin kullanımıyla haberleşme isteği modemlerin doğmasına sebeb olmuştur. Çok kısa süre içerisinde kullanımı çok büyük oranlarda artan modemlerin, gelişen iletişim teknolojileriyle rekabet etme istekleri bu alanda sürekli araştırma yapılması gereğimde beraberinde getirmiştir. Gerek telefon şebekelerini, sabit bir bant genişliğinde kullanmak zorunda olan modemlerle hızlı iletişim sağlama isteği, gerekse özel uygulamalardan doğan hatasız iletişim yapma isteği modemlerle birlikte hata düzeltme protokollerinin de kullanılmasına sebeb olmuştur. Bu tezin sunulmasındaki amaç, kullanımı çok yaygın olan Microcom Networking Protokolü (MNP)'nün seviye 4'ünün bir PC üzerinde benzetiminin yapılması ve hata düzeltmeli modem yapısıyla beraber hata düzeltmeli protokollerin tanıtılmasıdır. Bu tezde CCITT tarafından bu alanda bir standart olarak hazırlanan V42 önerisi DCE yapısı ve çalışma biçimi ayrıntılı olarak sunulmuştur. Günümüzde kullanılan milyonlarca modem üzerinde hata düzeltme protokolü olan Microcom şirketi tarafından geliştirilen MNP protokolü, çalışma şekli ve yapısı incelenmiş ve tanıtılmıştır. Ayrıca her iki protokol karşılaştırılmış ve başarımı etkileyen faktörler sunulmuştur. MNP'nin hat üzerindeki hata oranına bağlı olarak dinamik paket boyu ayarlayarak verimi artıran, seviye 4'nün, PC donanımı üzerinde çalışan sonlu durum modelli protokol yazılımıyla benzetimi yapılmıştır.

The CCITT created the first international standard for data correction and control in modems in late 1988. V42 recommendation represents this standard. V42 recommendation describes error-correcting protocols for use with V-series duplex DCEs to accept start-stop data from the DTE and transmit in synchronous mode. Since that time,' V42 has gained widespread acceptance and is now included in many high-speed modem products. This has led to a significant improvement in the overall reliability and integrity of telephone line data communications. High speed modems are prone to errors simply because the sophisticated signal processing techniques used in them send more data through a limited amount of bandwidth. The reliability brought about by V42 error correction and MNP is vital to success of high-speed modem networks, which cany massive amounts of data in application in which errors are intolerable. The most common V42 enhanced modems are all full-duplex dial-up line modems: V22bis modems at 2400bps, V32 modems at 9600bps, and V32bis modems at 14400bps. The trend indicates more and more users migrating away from leased line modems and toward dial-up line modems for economic reasons. Dial-up lines are most cost-effective. Until a few years ago, leased lines and expensive leased-line modems were required to achieve high speed data transfer. Now, with V32 and V32bis modems and reliability afforded by V42, high-speed data transfer can be readily accomplished over the dial-up telephone network. V42 is an error detection and correction scheme for modems operating over the telephone network or leased line network. To accomplish its task, V42 divides the transmitted data into blocks by performing asynchronous-to-synchronous conversion and time-aligning them before transmission. The communication between error- correcting modems is synchronous. A cyclic redundancy check (CRC) is used on the data blocks to check for errors at the receiving end. If errors are present, a message is sent to the transmitting end to re transmit the blocks. This form of error correction is called automatic repeat request (ARQ). Although somewhat time-consuming, this CRC-ARQ combination is very effective in ensuring error-free data transfer. The function of V42 is to improve the reliability of the data link by grouping the data into artificial blocks (i.e., frames) that can be systematically checked for errors and retransmitted when the frames are found to contain errors. The V42 procedure contains two distant error-correction algorithms. The primary technique is the link access procedure for modems (LAPM). It is based on the VI high-level data link control (HDLC) format employed in progressive technique (e.g. those used in ISDN protocols). In particular, it makes use of the Balanced Asynchronous Class (BAC) of HDLC procedures. The basic mode (i.e. without options) of this protocol makes use of HDLC "Optional Functions" 1,2,4,7,8 and 10. When using optional procedures of this error-correcting protocol, HDLC "Optional Functions" 3 (for selective re transmission), 12 (for loop-back test), 12 (for 32 bit FCS) are added. The second or alternative error control and correction protocol in V42 is the Microcom Networking Protocol (MNP) Level 4 procedure. Before V42 created a recognized standard for error control and correction in modems, MNP3-4 was a widely used de facto error-correction standard. In V42, it is regarded as an alternate technique and is purely optional. Unless otherwise specified by user option, two V42 DCEs will communicate using LAPM. A V42 DCE dialing or dialed by DCEs currently in operation that only use the MNP protocol will communicate using MNP protocol. The usual start-up mode for V42-type modems is in the LAPM; the modem can negotiate from there in to MNP 4 mode or non-error-correcting mode if desired. The MNP technique was included in V42 primarily to support the existing installed base of hundreds of modems around the world already using that technique. In V42 all enhancement to the procedure will be based on LAPM rather MNP4. An example of this is the V42bis recommendation for data compression, which builds solidly on the LAPM protocol. Full compliance with the V42 recommendation requires implementation of the LAMP procedure but not the optional procedure. After exhaustive testing during the formulation phase of V42, the CCll'i compared the two algorithms and judged MNP4 and LAPM to be equal in performance. Another feature of V42 is its ability to provide inter working between error- correcting and non-error-correcting modems. Although this is accomplished by reverting back native mode, it allows such modems to communicate. The logical structure of an error-correcting DCE is shown in Figure 1, indicating where and how the error-control functions fit into the communication process. V42 error-correcting DCE contains four components namely interchange circuits, signal converter, control function, and error control function. The DTE (e.g., a computer or terminal) exchanges data with the V42 DCE by a standard V24 interface circuit At this point, the data is in the traditional asynchronous start and stop format usually generated by computer equipment The signal converter provides the modulation and demodulation of the data signals exchanged on the GSTN, or two- wire point-to-point leased circuits. Between the interchange circuit and the signal converter, the control function provides overall control and coordination between each of the DCE components. A control function is used to provide a user interface to coordinate the operation of the interchange circuits and the signal converter. Further, the controller provides the specific operational configuration for the DCE selected by the user. The user interface to the controller is implementation dependent. The control function in an error- correcting DCE is enhanced beyond the functionality of a control function in a normal vu DCE. This encompasses a number of specific functions, including establishment of an initial handshake in V42 or native mode, coordinating the negotiation and/or indication of any necessary parameters and optional procedures that may require agreement by both ends of the link. It also coordinates functions associated with the LAPM or MNP4 protocol. In addition, the control function performs flow control and buffering of data to prevent data loss or overflow at either and of the link during error-correcting operation, conversion of the data between the asynchronous (i.e., start and stop) format to synchronous format, and coordination of loop-back testing of the modem link. The error control function is to be responsible for the operation of the protocol (LAPM or MNP4) that realizes the error-corrected connection. Basically these are negotiation and/or indicating of appropriate operational parameters and optional procedures, establishment of an error-corrected connection, and transmission and reception of data. Within LAPM or MNP4 all messages are transmitted in frames that are delimited by opening and closing flag. The frame is subdivided in to a series of fields that £ach represent a specific function. These fields comprise one or more data octets, with the number of octets per field dependent on the specific purpose of that field. All communication between the two error correction modems is accomplished through this structured messages. FIGURE 1 Communication between the control function and error control function is made by a set of primitives, which represents the logical exchange of information and control to accomplish a task or service. In V42 recommendation, the control function is viewed as the "service-user" while the error control function is viewed as the "service-provider". A connection over which the DCE' s error correcting protocol operates is established in two phases. Initially, a physical connection is established between the peer signal converter. After the physical connection has been establish, the peer error control functions will start the error-correcting protocol establishment phases which is second phase. Error-correcting protocol establishment process has been divided into two phases; the detection phase determines whether the remote DCE is also an error- correcting DCE and the protocol establishment phase determines parameter values and optional procedures to be used, as necessary and establishes the error-corrected connections. The detection phase has been designed to avoid the potential disruption to the called DTE that could occur if the control function immediately entered the protocol establishment phase and the remote DCE was not an error-correcting DCE. The detection phase allows the control function to verify the presence of remote error-correcting DCE. If the control function realize that the remote DCE is a V42 error-correcting DCE, it takes appropriate action to start LAPM protocol. If the Vlll calling DCE decide that the answerer does not process V42 error correcting capability, the calling DCE may fall back to non-error-correcting mode or may attempt to detect the presence of MNP4. The protocol establishment phase is initiated by the originating DCE upon successful completion of the detection phase if enabled. At this phase the control function negotiate and/or indicate the parameters and any optional procedures that govern the subsequent operation of the DCE and establish the error-corrected connection. Negotiation / indication process may be omitted if default parameter values and procedures are satisfactory. Upon completion of the protocol establishment phase, the data phase is entered.. In this phase the control function requests transmission by the error control function of data received on the V24 interface. Regardless of character format used, each character received by V24 interface is transmitted as an 8-bit character (without start and stop bits) across the DCE/DCE interface. In this phase if a break signal received on the V24 interface, the control function would delivered this signal to remote DCE. After prior establishment of an error-corrected connection, the control function may instruct its error control function to release the error-corrected connection in an orderly fashion. The price paid for this performance enhancement is obviously a decrease in efficiency. The additional overhead bits required by the flag, address control and frame-checking fields in each frame decrease the amount of user data that can be transferred at a fixed rate. Because frames containing errors are discarded and retransmitted, throughput is further reduced. Therefore, V42, like any other error correction procedure, may cause the overall information throughput rate to decrease. The application and data type help determine the length of the V42 frame. The more user data that can be packed into the frame's information field, the greater the protocol efficiency, because more user data is transferred each time the frame overhead fields are transmitted. Protocol efficiency is increased by the addition of user data to a frame's information field. Clearly the occurrence of frame rejection and retransmission as a result of errors has the most significant impact on the throughput. The more frequently error-stricken frames are rejected and have to re-send, the more the throughput drops. Almost any modem application requiring guaranteed error-free data is a suitable application for V42. Since its adoption, V42 has became widely available in modems. V42 implementation in V22bis, V32 and V32bis modems are available from dozens of manufacturers. Because V42 is largely a software-based procedure, no significant increase in size and only a marginal increase in cost are required to implement it in modem high-speed modems. As a result, the modem user receives the added benefits of V42 error correction for only a small increase in the price of modem. The CClli is continuing to build on the foundation of V42 to bring even more advanced technology. Manufacturer see this as vital to the survival of modems, because ISDN and other digital technologies are advancing in the market To stay competitive, modems must perform many of the functions of these new technologies at a reasonable cost. For example, V42bis, which provides data compression of up to 4:1, was approved by CCli'l as an enhancement to V42. IX MNP Most of modems use an error-correcting protocol MNP as a factory installed option to ensure reliable data transmission in asynchronous applications. There are five level in MNP. During the link attempt, MNP modems negotiate which level to employ for the connection. The modems automatically use the highest common level that can be supported. The basic characteristics of the five levels of MNP are as follows: Level 1: The lowest level of the MNP protocol. It provides for half-duplex asynchronous transmission between two modems whose highest common level is level 1. Level 2: Provides for full-duplex asynchronous transmission between modems whose highest common level's 2. Level 3: Provides for full-duplex synchronous transmission between two modems whose highest common level's 3. Level 4: Provides for full-duplex synchronous transmission between two modems whose highest common level is level's 4. Level 4 allows additional flexibility by manipulating block size to match line quality and optimize throughput Level 5: The highest level supported by MNP, provides all the functions of MNP level 4, and adds data compression. It uses dynamic Huffman compression algorithm. Constantly updated compression/decompression tables determine which characters are most commonly used, and compress them, reducing the number of bits transmitted to represent the most common characters. The definition of the protocols which make up the MNP is based on a layered architecture which segments the data communications path into a hierarchy of four components. The MNP defines peer-to-peer interaction of these layers, the link layer, the session layer, and application layer, at which a file transfer protocol is defined. Microcom's Link Protocol is a peer-to-peer protocol at layer 2 of the ISO Reference model. It provides reliable, flow-controlled transparent data transfer between two link user. Operation of MNP error-correcting DCE has been divided into three phases. MNP error-correcting procedure begins operation in the protocol establishment phase. In this phase, the error-correcting entity attempts to initialize an error- corrected connection for exchanging data. The protocol establishment phase begins after a physical connection is established. In this phase the originating DCE' error- correcting entity begins the procedures of the protocol establishment phase. The answering DCE's error-correcting entity shall be ready to respond to protocol messages immediately after the physical connection is established. The entities also make negotiation of parameters which effect the operation of error-corrected connection in this phase. The protocol messages in the connection establishment massage exchange is transmitted in start-stop, octet-oriented mode. The framing mode for the subsequent phases of error-corrected connection operation is determined during the protocol establishment phase. The second phase is data transfer phase. MNP procedure transfers user data in the data transfer phase. This phase is entered once the physical connection is established and the protocol establishment phase is completed. The error-correcting entity in the data phase uses the break-signaling procedures when it receives a break signal from the user at the V24 interface. The MNP error-correcting procedure terminates operation in the disconnect phase. The disconnect phase may be entered from any other phase of error-corrected connection operation. The disconnect phase uses the same framing mode as used in the phase prior to the disconnect phase. In LAPM the acknowledgment for packets is attached to the outgoing data frame (using the ack field in the frame header). The technique of temporarily delaying the outgoing acknowledgment so that they can be hooked onto the next outgoing data frame is widely known as piggybacking. The principal advantage of piggybacking over having distinct acknowledgment frames is a better use of the available channel bandwidth. The ack field in the frame header only costs a few bits, whereas a separate frame would need a header, the acknowledgment, and checksum. In addition, fewer frames sent means fewer "frame arrived" interrupts, and fewer buffer in the receiver. Piggybacking also introduces a complication not present with separate acknowledgment How long should the link entity wait for a packet onto which to piggybacking the acknowledgment? In LAPM when there is not any pending data for transmission, link entity sends separate acknowledgment frame to inform remote DCE about acknowledgment and receiver state. In MNP protocol acknowledgment information sends to remote DCE using distinct acknowledgment frames This is a disadvantage for MNP. Both protocols use pipelining techniques for sending data frames. MNP can only use go back n strategy in pipelining technique. This strategy corresponds to a receive window of size 1. In other words, the link entity refuses to accept any frame expect the next one it must give to the network layer. This approach can waste a lot of bandwidth if the error rate is high. But LAPM uses two strategy in pipelining technique. One of them go back n same as MNP. The other one selective repeat which is optional procedure for LAPM. In this method, receiver link entity store all the correct frames following the bad one. Then it request only the bad frame from the remote side. This approach can require large amounts of link entity memory if the windows is large. In MNP protocol retransmission of the frames begins when a duplicate ack frames is received. This is second disadvantage for MNP. Because transmitter should get two same ack before starting retransmision. The purpose of this thesis is the simulation of the error-correcting protocol MNP4 between two computers which are connected by two direct modems. MNP4 is the Microcom's Link Protocol, which is a peer-to-peer protocol at layer 2 of the ISO Reference model. The Microcom Link Protocol is simulated on the PC. In this simulation to show its running, three additional modules are defined and implemented. Another word, the software structure of the simulation system consists of a management unit, a data link layer, two modules and primitive queues between these units. The First module, which is designed as an upper layer, divides transmitted data into blocks and combines at receiver side. This module also increases efficiency by changing block size regarding the error-rate. With this property, block size is arranged dynamically for optimizing throughput.. The second module, which is designed as an physical layer, is implemented using Hayes compatible modems. This module realize modem control functions. Serial communication processes, which are sending and receiving data via serial communication adapter are included in this module. The management unit is the main process of the simulation software. Services provided by this unit are; user interface, control of primitive queues, memory management activation of layer processes, timer functions, and calculating error statistics to XI increment or decrement Same size. The Microcom Link Protocol and the additional layers, which are designed to show running of Microcom Link Protocol, are designed using finite state machine model. A key concept used in many protocol models is the extended finite state machine. With this technique, each protocol machine (i.e., sender or receiver) is always in a specific state at every instant of time. Transition between states take place as a result of an event occurring, for example a frame becoming ready to send, a frame received or a timer expiring. By an extended finite state machine a large number of states can be grouped together for purposes of analysis. In this implementation link layer is constructed as a four states machine. This simulation software is written by standard C programming language.
V42 Recommendation and MNP protocol
Tez (Yüksek Lisans) -- İstanbul Teknik Üniversitesi, Fen Bilimleri Enstitüsü, 1993
Keywords: Bilgisayar ve Kontrol; Bilgisayar iletişimi; Hata düzeltme yöntemleri; Modem; Computer Science and Control; Computer communication; Error correction methods; Modem